示例代码:函数
var num = 100; var str1 = '一花一世界'; var str2 = '200'; var boo = true; var result1 = num + 300; console.log(result1);// 调用结果为 400 // 若是字符串进行加法计算 -> 字符串链接运算符(拼串) var result2 = str1 + 300; console.log(result2);// 调用结果为 一花一世界300 console.log(typeof result2);// 调用结果为 string var result3 = str2 + 300; console.log(result3);// 调用结果为 200300 // 若是布尔类型进行加法计算 -> 将布尔类型转换为数字值,再进行加法计算 var result4 = boo + 300; console.log(result4);// 调用结果为 301
2.减法运算符性能
示例代码:code
var result5 = num - 100; console.log(result5);// 调用结果为 0 // 若是字符串进行减法计算的话 -> 将字符串类型转换为数字值,再进行减法计算 var result6 = str1 - 100; console.log(result6);// 调用结果为 NaN var result7 = str2 - 100; console.log(result7);// 调用结果为 100 // 若是布尔类型进行减法计算 -> 将布尔类型转换为数字值,再进行减法计算 var result8 = boo - 100; console.log(result8);// 调用结果为 -99
示例代码:字符串
console.log(num - NaN);// NaN console.log(num - '我是谁');// NaN
3.乘法和除法运算符和减法运算符同样数学
示例代码:string
console.log(100 % 3);// 1 console.log(8 % 4);// 0 // 求余的结果是正数仍是负数,与第一个操做数是正数或负数有关(与第二个操做数无关) console.log(100 % -3);// 1 console.log(8 % -4);// 0 console.log(-100 % 3);// -1 console.log(-8 % 4);// 0 console.log(-100 % -3);// -1 // 与减法的状况保持一致 console.log('卧龙学苑' % 2);// NaN
前置自增运算符 - ++变量名it
后置自增运算符 - 变量名++console
示例代码:变量
var num = 10; console.log(num);// 10 // 前置自增 var result1 = ++num; console.log(result1);// 11 console.log(num);// 11 // 后置自增 var result = num++; console.log(result);// 10 console.log(num);// 11
运算符中优先级别最高的是"()"扩展
示例代码:
console.log(100 + 200 - 150 * 3);// -150 console.log(100 + 200 % 3);// 102 console.log(2 * 200 % 3);// 1 var num = 10; console.log(5 + ++num);// 16
示例代码:
// 1.number类型 console.log(10 > 11);// false console.log(11 > 10);// true console.log(10 >= 10);// true // 2.boolean类型 - 将boolean类型转换为number类型 console.log(true > false);// true console.log(true > 0);// true /* 3.string类型 - a.英文;b.中文 * 英文或中文 -> 将文本转换成 Unicode 码 - 对应具备数字值 * 英文单词 -> 从左至右的依次比较字母 Unicode 码的大小 */ console.log('a' < 'b');// true console.log('a' > 'A');// true console.log('abc' > 'cba');// false console.log('abc' > 'acd');// false
1.相等和不相等:
相等比较运算符
不等比较运算符
示例代码:
// 1.number类型 console.log(10 == 10);// true console.log(10 == 11);// false // 2.boolean类型 console.log(true == true);// true console.log(true == false);// false console.log(true == 1);// true // 3.string类型 console.log('a' == 'a');// true console.log('a' == 'b');// false // 只比较值,而不比较类型 console.log('100' == 100);// true
2.等和不相等与全等
示例代码:
// 全等 - 不只比较值,还比较类型 console.log(10 === 10);// true console.log('10' === 10);// false console.log('10' == 10);// true // 不全等 console.log(11 !== 10);// true console.log('10' !== 10);// true
备注:
相等和不相等与全等和不全等的区别
做用 - 判断当前值是否为 NaN
示例代码:
console.log(isNaN(100));// false console.log(isNaN(Number('一花一世界')));// true
注意:boolean类型的值在isFinite()函数中表示的意思是:
var result = 100/0; console.log(result);// Infinity - 表示无穷大的意思 console.log(isFinite(result));// false
总结:
代码示例图:
console.log(true && true);// 调用结果为 true console.log(true && false);// 调用结果为 false console.log(false && true);// 调用结果为 false console.log(false && false);// 调用结果为 false /* 将逻辑与运算符的两个操做数,转换为布尔类型 * 当左边的操做数为true时,结果为右边操做数的值 * 当左边的操做数为false时,结果为左边操做数的值 */ console.log(100 && 1);// 调用结果为 1 console.log(1 && 0);// 调用结果为 0 console.log(0 && 1);// 调用结果为 0 console.log(0 && 0);// 调用结果为 0 console.log(true && true); console.log(true && false); console.log(false && true); console.log(false && false); console.log('一花一世界' && '一花一世界');// 调用结果为 一花一世界 console.log('一花一世界' && '');// 调用结果为 '' console.log('' && '一花一世界');// 调用结果为 '' console.log('' && '');// '' /* 若是两个变量是字符串和数字类型时则取右边的值 */ console.log('一花一世界' && 1);// 调用结果为 1 console.log(1 && '一花一世界');// 调用结果为 一花一世界 console.log(false && 0);// 调用结果为 false
将逻辑与运算符的两个操做数,转换为布尔类型
示例代码:
console.log(true || true);// 调用结果为 true console.log(true || false);// 调用结果为 true console.log(false || true);// 调用结果为 true console.log(false || false);// 调用结果为 false console.log(100 || 1);// 调用结果为 100 console.log(1 || 0);// 调用结果为 1 console.log(0 || 1);// 调用结果为 1 console.log(0 || 0);// 调用结果为 0 console.log(true || true); console.log(true || false); console.log(false || true); console.log(false || false); console.log('一花一世界' || '一花一世界');// 调用结果为 一花一世界 console.log('一花一世界' || '');// 调用结果为 一花一世界 console.log('' || '一花一世界');// 调用结果为 一花一世界 console.log('' || '');// 调用结果为 ''
逻辑非 - 语法 : (!)
赋值扩展运算符 - 就是简写形式
优势:
示例代码对比:
var b = 10, c = 20; var a = b + c; console.log(a);// 30 b = b + c; b += c; console.log(b);// 30
条件运算符的语法格式
示例代码:
var result = 10 > 20 ? '对' : '错'; console.log(result);// 调用结果为 错 var score = 95; score > 90 ? console.log('帅') : console.log('丑');// 调用结果为 帅
嵌套条件运算符
缺点
示例代码:
var result = score > 90 ? '很帅' : score > 80 ? '通常帅' : '很丑'; console.log(result);