賦值運(yùn)算符簡寫
// 賦值(Assignment)
// x = y;
x = y;
// 加賦值(Addition assignment)
// x = x + y;
x += y;
// 減賦值(Subtraction assignment)
// x = x - y;
x -= y;
// 乘賦值(Multiplication assignment)
// x = x * y;
x *= y;
// 除賦值(Division assignment)
// x = x / y;
x /= y;
// 模賦值(Remainder assignment)
// x = x % y;
x %= y;
// 指數(shù)賦值(Exponentiation assignment)
// x = x ** y;
x **= y;
// 左移賦值(Left shift assignment)
// x = x << y;
x <<= y;
// 右移賦值(Right shift assignment)
// x = x >> y;
x >>= y;
// 無符號(hào)右移賦值(Unsigned right shift assignment)
// x = x >>> y;
x >>>= y;
// 按位與賦值(Bitwise AND assignment)
// x = x & y;
x &= y;
// 按位異或賦值(Bitwise XOR assignment)
// x = x ^ y;
x ^= y;
// 按位或賦值(Bitwise OR assignment)
// x = x | y;
x |= y;
字符串轉(zhuǎn)數(shù)字
const a = parseInt('27', 10); // 27
const b = +'27'; // 27
const c = parseFloat('12.3'); // 12.3
const d = +'12.3'; // 12.3
索引查找
if (~data.indexOf(item)) {
// item 存在
}
if (!~data.indexOf(item)) {
// item 不存在
}
~a 按位非操作符,反轉(zhuǎn)操作數(shù)的比特位,0 => 1,1 => 0。
~a 的結(jié)果為 -(a + 1)。
展開語法
在函數(shù)調(diào)用時(shí)使用展開語法
function sum(x, y, z) {
return x + y + z;
}
const numbers = [1, 2, 3];
sum.apply(null, numbers); // 6
sum(...numbers); // 6