js的一些小技巧
阿新 • • 發佈:2021-08-03
使用 !! 在 JS 中將任何內容轉換為布林值
!!true; //true !!false; //false !!0; // false !![]; //false !!''; //false !!'123'; //true
使用擴充套件運算子組合兩個陣列
const nums1 = [1, 2, 3]; const nums2 = [4, 5, 6]; const nums3 = [...nums1,...nums2];//[1,2,3,4,5,6]
const nums1 = [1,2,3]; const nums2 = [...nums1,4,5];//[1,2,3,4,5]
使用擴充套件運算子將剩餘元素分配給變數:
const student = { name: "Matt", age: 23, city: "Helsinki", state: "Finland", }; const { name, age, ...address } = student;
使用&&運算子檢查是否為真。
物件鍵與值具有相同的名稱
const name = "Luis", city = "Paris", age = 43, favoriteFood = "Spaghetti";
const person = { name, city, age, favoriteFood };
為函式引數提供預設值
function pickUp(fruit = "Banana") { console.log(`I picked up a ${fruit}`) } pickUp("Mango"); // -> I picked up a Mango pickUp(); // -> I picked up a Banana
用於Object.values()將物件的所有值收集到一個新陣列中
const info = { name: "Matt", country: "Finland", age: 35 };
const data = Object.values(info);
includes和indexof檢查元素是否在陣列中
let numbers = [1, 2, 3]; const hasNumber1 = numbers.indexOf(1) > -1 // -> True const hasNumber1 = numbers.includes(1) // -> True
壓縮多個條件
const num = 1; if([1,2,3].includes(num)){ console.log("Yay"); }
**運算子替代Math.pow()
Math.pow(4,2); // 16 Math.pow(2,3); // 8 4**2 // 16 2**3 // 8
~~運算子替代Math.floor()
Math.floor(5.25) // -> 5.0 ~~5.25 // -> 5.0
使用解構語法在一行中分配多個值:
let num1, num2;
[num1, num2] = [10, 100];
student = { name: "Matt", age: 29, }; let { name, age } = student;