运算符:操作运算的符号:&& ! + ?
表达式:可以为常量、变量、一个式子。
算术运算符:
①单目:++ - -
②双目:+ - * / %(求余/求模)
关于①:操作数必须是变量;
i++ 和 ++i的区别:
相同:都让变量i自增;
不同:i++先让i值赋值给整个表达式,再自增1;反之++i先自增1,再赋值给整个表达式。
关于②:
在- * / %中:
①如果两边都是数值型,可以进行正常运算;
②如果有一侧是纯数字字符串,js会自动将其转为数值型参与计算;
③如果有一侧是非数字字符串,结果为NaN(not a number 不是一个数)
eg:
console.log( 3 - 1 ); //2
console.log("3" - 1); //2
console.log("3" - "a"); //NaN
console.log("3" / 3); //1
console.log("3" % 7); //3
+:
①两侧都是数值型,可以正常运算;
②只要有一侧是字符串,“+”就代表连接
赋值运算符:+= -= *= /= %=
+= :var x=10;
x += 10; //x=x+10;//20
-= : var x=9;
x -= 10; //x=x-10;//-1
*=:var y=1-;
y *= 10;//y=y*10;//100
...
关系运算符:(比较运算符)
> < ==(等于) >= <= !=(不等于) ===(全等) !==(不全等)
比较的结果为布尔值:true,false
== 与 ===的区别:
==:不看数据类型,只要值相等,则true;
===:先看数据类型再看值,若不等,则false. (null == undefined 为true;值都无)
字符串的比较:比较的是ASCII码值,从左到右比较,知道比较出结果为止。
a:97 b:98 c:99....
A:65 B:66 C:67...
以此类推。
逻辑运算符:&&(与) ||(或) !(非)
情况一:&&如果两侧都为真,整个表达式为真;一侧为假,整个表达式为假。
eg:console.log(6>5 && 5>4);//true && true true
console.log(6>5 && 4>5);//true && false false
||如果有一侧为真,整个表达式为真;两侧都为假,整个表达式为假。
eg:console.log(6>5 || 3>4);//true
console.log(5>6 || 3>4);//false
! 非假即真,非真即假
eg:console.log(!false);//true
console.log(!true);//false
情况二://短路
console.log(6>7 && 5>4);//false //第一个式子已经为假,则不进行下一个式子的运算
console.log(6>5 || 5>7);//false //第一个式子已经为真,则不进行下一个式子的运算
情况三:
console.log(6>5 && 4);//4 //第一个式子为真,运行到4,为真,但是是具体的值则输出具体的值
console.log(5>6 || 3);//3 //第一个式子为假,运行到3,为真,为具体数值则输出3
条件运算符:(三目运算符) ?:
表达式1?表达式2:表达式3;
如果表达式1成立,则输出表达式2;
如果表达式1不成立,则输出表达式3.
输入对话框:prompt(“提示语句”);
特点:一个输入框,一个确认按钮,一个取消按钮
如果你想看输入的值,要用一个变量去接收他,若点击确定按钮,变量里存的为你的i输入值;若点击取消按钮,变量里存的为null.
ParseInt() 将字符串转为数值型,并且数值取整。
.toFixed(x)保留位x小数.