今天我们继续来学习Auto.js脚本制作。关于变量,在脚本中,可谓是必不可少。变量顾名思义,就是一个可以改变的量。说的简单点,可以理解为,字母表示值,但是这个值有很多种,不一定是数字,小数,还有很多其他类型,比如说字符,字符串,对与否,再大点,各种对象,手机电脑,都可以保存在一个变量里,但是各种对象的数据类型,可能包含着很多内容,并且还有函数。这里听着可能有点抽象,小白们可以慢慢理解。
1.变量的创建-var
var创建变量,是js语言中最简单的创建方法。语法是:var 变量名;比如我们要创建一个名字为a的变量,语句就是var a;这时就创建出来一个空的变量,如果输出他的值,那就是null(空)。也可以在创建的同时给变量写上初始值,语法是:var 变量名=值;比如我们创建一个值为5,名字叫b的变量,语句就是var b=5;使用这句话之后,系统会创建一个叫b的变量并且给他赋值,值为5,这个变量数据类型就是数字(Number)类型。关于变量名,也有一定要求,主要就是,不能已数字开头,变量名不可重复,不能和运行关键词while,for,if,try等等的单词完全相同。中文变量名在js是可以用,但是不推荐使用。
拓展:在创建的时候,还有另一种情况我们需要先创建一个变量,但是在这时,我们还不知道这个变量的数值或者我们要定义的这个变量根本没有数值,但一定要规定数据类型。这时我们要用到构造函数,这是很多类里面都有的功能,创建的语法是var 变量名=new 数据类型(传入值); 我们先不说自己写的类,如何写构造函数,先看看怎么使用别人类的构造函数,比如说我们要创建一个数据类型为数组的变量(数组就是一个序列,里面能放很多相同数据类型的变量),但不知道里面的内容,这时候就可以用数组的构造函数new Array();比如语句是var d=new Array();这时就创建了一个数据类型为数组的变量。这时细心的朋友应该发现了,上面的语法里括号里明明写需要写上传入值的为什么这边语句里传入值是空的呢?这种构造函数,在创建时候不需要传入任何值,被叫做无参构造函数,与之相对的,还有有参构造函数,比如这个数组,其实有两种构造函数,还有一种是需要传入创建出来的数组的长度的,比如我要创建一个长度(整数类型)为5的数组(数组里面能放5个变量)名字叫e的数组,语句是var e=new Array(5); 当一个类有多个无参构造函数时,在创建的时候系统会根据你传入的值的个数和类型选择对应的构造函数。
2.基本数据类型
虽然数据类型有很多,每个人都能自己写数据类型。但是基本数据类型实际上不多,主要有 数字型(Number),布尔型(Boolean),字符串型(String),其他还有 不明(Undefined),空(null)等。Number不用我多说 就是数字,布尔型就是对与否。true和false只有两个值,字符串就是我们说的文字abc,之类的,但是表示字符串的时候必须要注意用英文输入法的双引号套住,比如要创建一个值为abc的字符串变量,语句是var f=”abc”;但如果你写成了var f=abc;这时,系统运行到这部时就会去寻找名字叫做abc的变量,没有找到就会抛出变量未找到的报错信息,导致脚本停止。
2.5 本章附带知识-信息输出
在Auto.js中信息输出有很多方式。
比如console.log();这个功能,在Auto.js中封装成了全局函数,所以可以直接用语法:log(要输出的内容);来输出,这是最常见的一种输出方式,打印黑字到日志,一般用来输出运行的普通信息。可以是任何类型的,但终究是用文字的形式表示出来。
日志打开方法:脚本编辑界面->右上角三个点->日志
我们来测试一下代码log(233);的打印信息吧

日志里的输出功能还有很多:
console.verbose(“要输出的内容”);颜色为灰色,一般用来打印不重要内容。
console.info(“要输出的内容”);颜色为绿色,一般用来打印运行信息。
console.warn(“要输出的内容”);颜色为蓝色,一般用来打印运行警报。
console.error(“要输出的内容”);颜色为红色,一般用来打印运行报错信息。

除了在日志里打印输出,当然还有其他方法。
气泡输出:语法:toast(“要输出内容”);
对话框输出:语法:alert(“标题”,”内容”);
效果明显,各位可以自己去尝试。
我们来输出个变量试试看,代码var g=666;log(g);成功输出g的内容666

3.变量赋值
变量的值,是可变的那么如何修改变量的值呢,这就要用到赋值运算符-等于号。
这个符号的作用就是把等号前的变量的值设置为等号后的值,比如按顺序三行代码var a=5;a=0;log(a);这时打印变量,输出的信息是0,虽然原来创建了值为5的变量,但后来将变量的值修改成0了,所以最终输出出来还是0。
我们再来看个例子:

请各位判断输出的值。
答案:

行级注释 —> //注释内容行级注释,从双斜杠开始这一行后面的,全为注释。
块级注释 —> /*注释内容*/跨行注释,从斜杠星号一直到星号斜杠中的内容,无论多少行,都判断为注释内容。
例如下图的例子,完全不影响代码运行,但是不是看上去清楚了不少呢?

①字符串,字符串的拼接用加号进行运算。

用变量也是一样的。


布尔值计算示例
举个例子:

判断是否相等示例