1. 程式人生 > 其它 >js的一些小技巧

js的一些小技巧

使用 !! 在 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;