逻辑与:(&&)
1)如果第一个操作数为true或者能隐式转换为true,则运算结果为第二个操作数
2)如果第一个操作数为false或者能隐式转换为false,则运算结果为第一个操作数
eg:
console.log(2&&6,2&&-10,0&&10,false&&20,true&&0);//结果(6,-10,0,false,0)
逻辑或:(||)
1)如果第一个操作数为true或者能隐式转换为true,则运算结果为第一个操作数
2)如果第一个操作数为false或者能隐式转换为false,则运算结果为第二个操作数
eg:
console.log(undefined || 10, false || 0, 10 || true, true || 10);//结果(10,0,10,true)
自增自减
(即自增1或者自减1)
var a = 1;
var b = a++;//先赋值,再加1
console.log(a,b);//结果为(2,1)
var b = ++a;//先加1,再赋值
console.log(a,b);//结果为(2,2)
eg:
var i = 10;
console.log(i++ + i + ++i - i + ++i + i++ + i);
//结果为(10 + 11 + 12 - 12 + 13 + 13 + 14)
进制
二进制 0-1 逢2进1
八进制 0-7 逢8进1
十进制 0-9 逢10进1
十六进制 0-9 A-F 逢16进1
//八进制 ES5里以0开头 后面跟0-7之间的数字
var num1 = 011;//1*8的0次方 + 1*8的一次方
num1 = 017;//7*8的0次方 + 1*8的一次方
console.log(num1);*/
//十六进制
/*var num2 = 0x2F;
console.log(num2);*/(47)
console.log(parseInt(13,7),parseInt(1,1))(10,NaN);
判断数据类型的方法 typeof
console.log(typeof 10,typeof "10",typeof true,typeof undefined,typeof null,typeof {});//结果(Number String Boolean underfined null object)
console.log(typeof typeof 10);//结果为(string")因为执行的是2) typeof "number" 1)typeof 10 => "number"