运算、判断
运算
算数运算符
console.log(1 + 1)
console.log(1 + 2)
a += 5 ---> a = a + 5
console.log(2 - 1)
console.log(2 - '1')
a -= 5 ---> a = a - 5
console.log(3 * 1)
console.log(3 * '1')
a *= 5 ---> a = a * 5
console.log(4 / 1)
console.log(4 / '1')
a /= 5 ---> a = a / 5
console.log(5 % 2)
console.log(5 % '2')
a %= 5 ---> a = a % 5
逻辑运算符
逻辑与 &&
//特性:符号左边的值,如果为真(转换为布尔类型后为true),则返回右边的值,如果为假,返回自身
console.log(1 && 3) // 1的值为true,所以返回3
console.log(0 && 3) // 0的值为false ,所以返回0
console.log(true && 'abc') // true ,所以返回值为字符串 abc
console.log(false && 'abc') // false, 所以返回值为false
逻辑非 ||
console.log(1 || 3)
console.log(0 || 3)
取反 !
//返回值:将值转换为布尔类型后,做一个取反的操作,也就是true的话会变成false,false会变成true
console.log(!1) // 1的值为true,取反为false,所以返回值 为false
console.log(!0) // 1的值为false,取反为true,所以返回值 为true
console.log(!true) // true取反为false,所以返回值 为false
自增 ++
var a = 1
console.log(++a)
console.log(a)
var a = 1
console.log(a++)
console.log(a)
自减 --
var a = 1
console.log(--a)
console.log(a)
var a = 1
console.log(a--)
console.log(a)
判断
判断相等
//判断符号两边的值是否相等,相等时返回true,不相等返回false
// = 为赋值
// == 为等于
// === 为全等,判断时候不会左隐形转换,还会判断类型
console.log(1 == 1) //1相等 所以返回true
console.log(1 == '1') //1 等于 '1'的内容 所以返回true
console.log(1 === '1') //1 和 '1'的数据类型不一致,所以返回false
判断不相等
//判断符号两边的值是否不相等,不相等时返回true,相等返回false
//!= 不会对比数据类型
//!== 会对比数据类型
console.log(1 !== 1) //1相等,所以返回false
console.log(1 !== '1') //1 等于 '1'的内容 所以返回false
console.log(1 !=== '1') //1 和 '1'的 数据类型不一致,所以返回true