JavaScript-แƒ˜แƒก 12 แƒฎแƒ แƒ˜แƒ™แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ’แƒแƒ™แƒ•แƒ”แƒ—แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ แƒ’แƒแƒ›แƒแƒขแƒแƒ•แƒ”แƒ‘แƒก

JavaScript-แƒ˜แƒก 12 แƒฎแƒ แƒ˜แƒ™แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ’แƒแƒ™แƒ•แƒ”แƒ—แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ แƒ’แƒแƒ›แƒแƒขแƒแƒ•แƒ”แƒ‘แƒก

แƒ แƒแƒ“แƒ”แƒกแƒแƒช JavaScript-แƒ˜แƒก แƒกแƒฌแƒแƒ•แƒšแƒ แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒ”, แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ แƒแƒช แƒ’แƒแƒ•แƒแƒ™แƒ”แƒ—แƒ” แƒ˜แƒงแƒ แƒฎแƒ แƒ˜แƒ™แƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒ›แƒ”แƒฎแƒ›แƒแƒ แƒ แƒ“แƒ แƒแƒ˜แƒก แƒ“แƒแƒ–แƒแƒ’แƒ•แƒแƒจแƒ˜. แƒ›แƒ” แƒจแƒ”แƒ•แƒœแƒ˜แƒจแƒœแƒ” แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒกแƒฎแƒ•แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒกแƒขแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒกแƒแƒ˜แƒขแƒ”แƒ‘แƒ–แƒ” แƒ“แƒ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒแƒ”แƒ‘แƒจแƒ˜.

แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜ แƒ›แƒ” แƒ’แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ— 12 แƒจแƒ”แƒกแƒแƒœแƒ˜แƒจแƒœแƒแƒ• แƒ’แƒ–แƒแƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ JavaScript แƒ™แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ”แƒ‘แƒšแƒแƒ“ แƒ“แƒ แƒ“แƒแƒฉแƒฅแƒแƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒฃแƒ›แƒ”แƒขแƒ”แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒฃแƒœแƒ˜แƒ•แƒ”แƒ แƒกแƒแƒšแƒฃแƒ แƒ˜แƒ.

แƒจแƒ”แƒ’แƒแƒฎแƒกแƒ”แƒœแƒ”แƒ‘แƒ—: "Habr"-แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ”แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก - แƒคแƒแƒกแƒ“แƒแƒ™แƒšแƒ”แƒ‘แƒ 10 แƒ แƒฃแƒ‘แƒšแƒ˜แƒ“แƒแƒœ Skillbox-แƒ˜แƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒ™แƒฃแƒ แƒกแƒ–แƒ” แƒฉแƒแƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒกแƒแƒก "Habr" แƒกแƒแƒ แƒ”แƒ™แƒšแƒแƒ›แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

Skillbox แƒ’แƒ˜แƒ แƒฉแƒ”แƒ•แƒ—: แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒฃแƒšแƒ˜ แƒ™แƒฃแƒ แƒกแƒ˜ "Mobile Developer PRO".

แƒฃแƒœแƒ˜แƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒคแƒ˜แƒšแƒขแƒ•แƒ แƒ

แƒ›แƒแƒกแƒ˜แƒ•แƒ”แƒ‘แƒ˜

Set แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜ แƒ“แƒแƒ˜แƒœแƒ”แƒ แƒ’แƒ ES6-แƒจแƒ˜,..., spread แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“, แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒแƒฎแƒแƒšแƒ˜ แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฃแƒœแƒ˜แƒ™แƒแƒšแƒฃแƒ  แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒก.

const array = [1, 1, 2, 3, 5, 5, 1]
const uniqueArray = [...new Set(array)];
 
console.log(uniqueArray); // Result: [1, 2, 3, 5]

แƒœแƒแƒ แƒ›แƒแƒšแƒฃแƒ  แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒแƒจแƒ˜, แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ˜แƒก แƒจแƒ”แƒกแƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒšแƒแƒ“ แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒ‘แƒ”แƒ•แƒ แƒแƒ“ แƒ›แƒ”แƒขแƒ˜ แƒ™แƒแƒ“แƒ˜.

แƒ”แƒก แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ›แƒแƒกแƒ˜แƒ•แƒ”แƒ‘แƒ–แƒ”, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒžแƒ แƒ˜แƒ›แƒ˜แƒขแƒ˜แƒฃแƒš แƒขแƒ˜แƒžแƒ”แƒ‘แƒก: แƒ’แƒแƒœแƒฃแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒšแƒ˜, แƒœแƒฃแƒšแƒแƒ•แƒแƒœแƒ˜, แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜, แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜ แƒ“แƒ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜. แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ— แƒ›แƒแƒกแƒ˜แƒ•แƒ—แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒก, แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒก แƒแƒœ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒแƒกแƒ˜แƒ•แƒ”แƒ‘แƒก, แƒ“แƒแƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ˜แƒ“แƒ’แƒแƒ›แƒ.

แƒฅแƒ”แƒจแƒ˜ แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒกแƒ˜แƒ’แƒ แƒซแƒ” แƒชแƒ˜แƒ™แƒšแƒ”แƒ‘แƒจแƒ˜

แƒชแƒ˜แƒ™แƒšแƒ”แƒ‘แƒ˜

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒกแƒฌแƒแƒ•แƒšแƒแƒ‘แƒ— แƒ›แƒแƒ แƒงแƒฃแƒŸแƒ”แƒ‘แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒ˜แƒฐแƒงแƒ•แƒ”แƒ‘แƒ˜แƒ— แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒš แƒžแƒ แƒแƒชแƒ”แƒ“แƒฃแƒ แƒแƒก:

for (let i = 0; i < array.length; i++){
  console.log(i);
}

แƒ—แƒฃแƒ›แƒชแƒ, แƒแƒ› แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒ˜แƒ—, for loop แƒแƒ แƒแƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒก แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒกแƒ˜แƒ’แƒ แƒซแƒ”แƒก แƒงแƒแƒ•แƒ”แƒšแƒ˜ แƒ’แƒแƒ›แƒ”แƒแƒ แƒ”แƒ‘แƒ.

แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒ”แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฃแƒ›แƒ”แƒขแƒ”แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒฃแƒคแƒ แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜แƒ แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒกแƒ˜แƒ’แƒ แƒซแƒ˜แƒก แƒฅแƒ”แƒจแƒ˜แƒ แƒ”แƒ‘แƒ, แƒ แƒแƒช แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ›แƒแƒกแƒ–แƒ” แƒ”แƒ แƒ— แƒฌแƒ•แƒ“แƒแƒ›แƒแƒก. แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ แƒกแƒ˜แƒ’แƒ แƒซแƒ˜แƒก แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ˜แƒ—, แƒกแƒแƒ“แƒแƒช แƒ’แƒแƒœแƒ•แƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒ— i แƒชแƒ•แƒšแƒแƒ“แƒก, แƒแƒกแƒ”:

for (let i = 0, length = array.length; i < length; i++){
  console.log(i);
}

แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒจแƒ˜, แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒ˜แƒ’แƒ˜แƒ•แƒ”แƒ แƒ แƒแƒช แƒ–แƒ”แƒ›แƒแƒ—, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒ แƒงแƒฃแƒŸแƒ˜แƒก แƒ–แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ–แƒ แƒ“แƒ˜แƒ— แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒ“แƒ แƒแƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœ แƒ”แƒ™แƒแƒœแƒแƒ›แƒ˜แƒแƒก.

แƒ›แƒแƒ™แƒšแƒ” แƒฉแƒแƒ แƒ—แƒ•แƒ˜แƒก แƒœแƒ˜แƒจแƒแƒœแƒ˜ (แƒ›แƒแƒ™แƒ™แƒแƒ แƒขแƒ˜แƒก แƒ แƒ”แƒ˜แƒขแƒ˜แƒœแƒ’แƒ˜)

แƒžแƒ˜แƒ แƒแƒ‘แƒ˜แƒ—แƒ˜ แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ”แƒ‘แƒ˜

แƒกแƒแƒ›แƒ”แƒฃแƒšแƒ˜ แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ แƒแƒ แƒ˜แƒก แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒ“แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜ แƒ’แƒ–แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ (แƒ“แƒ แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒแƒ แƒช แƒ˜แƒกแƒ” แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜) แƒžแƒ˜แƒ แƒแƒ‘แƒ˜แƒ—แƒ˜ แƒ’แƒแƒœแƒชแƒฎแƒแƒ“แƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒ”แƒ แƒแƒ“:

x> 100? โ€ž100-แƒ–แƒ” แƒ›แƒ”แƒขแƒ˜โ€œ: โ€ž100-แƒ–แƒ” แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒ˜โ€œ;
x> 100? (x>200? "200-แƒ–แƒ” แƒ›แƒ”แƒขแƒ˜": "100-200-แƒก แƒจแƒแƒ แƒ˜แƒก"): "100-แƒ–แƒ” แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒ˜";

แƒ›แƒแƒ’แƒ แƒแƒ› แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒกแƒแƒ›แƒ˜แƒแƒœแƒ˜ แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜แƒช แƒ™แƒ˜ แƒฃแƒคแƒ แƒ แƒ แƒ—แƒฃแƒšแƒ˜แƒ, แƒ•แƒ˜แƒ“แƒ แƒ” แƒกแƒแƒญแƒ˜แƒ แƒแƒ. แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— 'and' && แƒ“แƒ 'or' แƒœแƒแƒชแƒ•แƒšแƒแƒ“ || แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜ แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒแƒคแƒแƒกแƒแƒœ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒ˜ แƒ™แƒ˜แƒ“แƒ”แƒ• แƒฃแƒคแƒ แƒ แƒ›แƒแƒ™แƒšแƒ”แƒ“. แƒ›แƒแƒก แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒฃแƒฌแƒแƒ“แƒ”แƒ‘แƒ”แƒœ "แƒ›แƒแƒ™แƒšแƒ” แƒฉแƒแƒ แƒ—แƒ•แƒ˜แƒก" แƒแƒœ "แƒ›แƒแƒ™แƒšแƒ” แƒฉแƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ แƒ”แƒ˜แƒขแƒ˜แƒœแƒ’แƒก".

แƒ แƒแƒ’แƒแƒ  แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก แƒแƒ›แƒแƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ

แƒ•แƒ—แƒฅแƒ•แƒแƒ—, แƒ’แƒ•แƒ˜แƒœแƒ“แƒ แƒแƒ แƒ˜ แƒแƒœ แƒ›แƒ”แƒขแƒ˜ แƒžแƒ˜แƒ แƒแƒ‘แƒ˜แƒ“แƒแƒœ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ˜แƒก แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒ.

&&-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ“แƒแƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒชแƒ แƒฃ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก. แƒ—แƒฃ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒแƒžแƒ”แƒ แƒแƒœแƒ“แƒ˜ แƒคแƒแƒกแƒ“แƒ”แƒ‘แƒ true, แƒ›แƒแƒจแƒ˜แƒœ แƒ‘แƒแƒšแƒ แƒจแƒ”แƒคแƒแƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ˜ แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ.

let one = 1, two = 2, three = 3;
console.log(one && two && three); // Result: 3
 
console.log(0 && null); // Result: 0

แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ || แƒ“แƒแƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒš แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก. แƒ—แƒฃ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒแƒžแƒ”แƒ แƒแƒœแƒ“แƒ˜ แƒจแƒ”แƒคแƒแƒกแƒ“แƒ”แƒ‘แƒ false-แƒ›แƒ“แƒ”, แƒ›แƒแƒจแƒ˜แƒœ แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ แƒ‘แƒแƒšแƒ แƒจแƒ”แƒคแƒแƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ.

let one = 1, two = 2, three = 3;
console.log(one || two || three); // Result: 1
 
console.log(0 || null); // Result: null

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ 1

แƒ•แƒ—แƒฅแƒ•แƒแƒ—, แƒ’แƒ•แƒ˜แƒœแƒ“แƒ แƒ“แƒแƒ•แƒแƒ‘แƒ แƒฃแƒœแƒแƒ— แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒกแƒ˜แƒ’แƒ แƒซแƒ”, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ  แƒ•แƒ˜แƒชแƒ˜แƒ— แƒ›แƒ˜แƒกแƒ˜ แƒขแƒ˜แƒžแƒ˜.

แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— if/else, แƒ แƒแƒ—แƒ แƒจแƒ”แƒแƒ›แƒแƒฌแƒ›แƒแƒ—, แƒ แƒแƒ› foo แƒแƒ แƒ˜แƒก แƒกแƒฌแƒแƒ แƒ˜ แƒขแƒ˜แƒžแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ’แƒ แƒซแƒ”แƒšแƒ˜ แƒ˜แƒงแƒแƒก. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ˜แƒ แƒแƒ•แƒ˜แƒฆแƒแƒ— แƒฉแƒ•แƒ”แƒœแƒ˜ "แƒ›แƒแƒ™แƒšแƒ” แƒฉแƒแƒ แƒ—แƒ•แƒ".

return (foo || []).length;

แƒ—แƒฃ แƒชแƒ•แƒšแƒแƒ“แƒก foo แƒแƒฅแƒ•แƒก แƒจแƒ”แƒกแƒแƒคแƒ”แƒ แƒ˜แƒกแƒ˜ แƒกแƒ˜แƒ’แƒ แƒซแƒ”, แƒ›แƒแƒจแƒ˜แƒœ แƒ˜แƒก แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ. แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— 0-แƒก.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ 2

แƒ’แƒฅแƒแƒœแƒ˜แƒแƒ— แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒฉแƒแƒ“แƒ’แƒ›แƒฃแƒš แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒกแƒแƒก? แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒแƒ  แƒ˜แƒชแƒแƒ“แƒ”แƒ— แƒแƒ แƒ˜แƒก แƒ—แƒฃ แƒแƒ แƒ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜ แƒแƒœ แƒ›แƒ˜แƒกแƒ˜ แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒฅแƒ•แƒ”แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ แƒ“แƒ แƒแƒ›แƒแƒœ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ˜แƒฌแƒ•แƒ˜แƒแƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ’แƒ•แƒ˜แƒœแƒ“แƒแƒ“แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒแƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ this.state-แƒจแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒฃแƒšแƒ˜, แƒกแƒแƒœแƒแƒ› แƒฉแƒ•แƒ”แƒœแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ แƒแƒ  แƒ“แƒแƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก fetch แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒแƒก.

แƒ˜แƒ›แƒ˜แƒกแƒ“แƒ แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—, แƒ—แƒฃ แƒกแƒแƒ“ แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— แƒ›แƒแƒก, แƒแƒ›.state.data-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒซแƒแƒฎแƒ”แƒ‘แƒแƒ› แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฎแƒ”แƒšแƒ˜ แƒจแƒ”แƒฃแƒจแƒแƒšแƒแƒก แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒก แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒแƒก. แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ˜แƒก แƒ’แƒแƒ“แƒแƒกแƒแƒญแƒ แƒ”แƒšแƒแƒ“, แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ”แƒก แƒžแƒ˜แƒ แƒแƒ‘แƒ˜แƒ—แƒ˜ แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒ•แƒ˜แƒขแƒแƒœแƒแƒ—:

if (this.state.data) {
  return this.state.data;
} else {
  return 'Fetching Data';
}

แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ "แƒแƒœ" แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ.

return (this.state.data || 'Fetching Data');

แƒฉแƒ•แƒ”แƒœ แƒ•แƒ”แƒ  แƒจแƒ”แƒ•แƒชแƒ•แƒšแƒ˜แƒ— แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ™แƒแƒ“แƒก &&-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“. "แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒ" && this.state.data แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ แƒ“แƒแƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก this.state.data-แƒก, แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒแƒ แƒ˜แƒก แƒ—แƒฃ แƒแƒ แƒ แƒ˜แƒก แƒ’แƒแƒœแƒฃแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒšแƒ˜.

แƒกแƒฃแƒ แƒ•แƒ˜แƒšแƒ˜แƒกแƒแƒ›แƒ”แƒ‘แƒ  แƒฏแƒแƒญแƒ•แƒ˜

แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ›แƒแƒ’แƒ•แƒ—แƒแƒ•แƒแƒ–แƒแƒก แƒแƒ แƒแƒกแƒแƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒฃแƒšแƒ แƒฏแƒแƒญแƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฎแƒ˜แƒก แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒแƒจแƒ˜ แƒฅแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฆแƒ แƒ›แƒแƒ“ แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒ˜แƒก แƒ›แƒชแƒ“แƒ”แƒšแƒแƒ‘แƒ˜แƒกแƒแƒก. แƒ›แƒแƒจ, แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒœแƒ˜แƒจแƒœแƒ˜แƒก แƒกแƒ˜แƒ›แƒ‘แƒแƒšแƒ? แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒฅแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒฆแƒ”แƒ‘แƒแƒ“ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ˜แƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ—แƒฃ แƒ˜แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒœแƒฃแƒšแƒแƒ•แƒแƒœแƒ˜.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒจแƒ”แƒ•แƒชแƒ•แƒแƒšแƒแƒ— แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜, แƒ แƒแƒ› แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒแƒ— this.state.data?..(). แƒแƒœแƒฃ, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ˜แƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ—แƒฃ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒ  แƒแƒ แƒ˜แƒก null.

แƒแƒœ, แƒ—แƒฃ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒฅแƒ•แƒก แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒฃแƒšแƒ˜แƒ แƒ—แƒฃ แƒแƒ แƒ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒฌแƒ˜แƒคแƒ, แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ“แƒแƒ•แƒแƒ‘แƒ แƒฃแƒœแƒแƒ— แƒ”แƒก.state?.data.

แƒ’แƒแƒ“แƒแƒ˜แƒงแƒ•แƒแƒœแƒ”แƒ— แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒแƒ“

แƒขแƒ˜แƒžแƒ˜แƒก แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ

แƒ’แƒแƒ แƒ“แƒ แƒœแƒแƒ แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒกแƒ, true แƒ“แƒ false, JavaScript แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒœแƒ˜แƒฎแƒ˜แƒšแƒแƒ•แƒก แƒงแƒ•แƒ”แƒšแƒ แƒกแƒฎแƒ•แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒ˜แƒ›แƒแƒ แƒ—แƒšแƒ”แƒก แƒแƒœ แƒงแƒแƒšแƒ‘แƒก.

แƒกแƒแƒœแƒแƒ› แƒกแƒฎแƒ•แƒแƒ’แƒ•แƒแƒ แƒแƒ“ แƒแƒ  แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒฆแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ˜, JavaScript-แƒจแƒ˜ แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒ แƒ˜แƒก แƒกแƒ˜แƒ›แƒแƒ แƒ—แƒšแƒ”, แƒ’แƒแƒ แƒ“แƒ 0, "", null, แƒ’แƒแƒœแƒฃแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒšแƒ˜, NaN แƒ“แƒ, แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, false. แƒ”แƒก แƒฃแƒ™แƒแƒœแƒแƒกแƒ™แƒœแƒ”แƒšแƒ˜ แƒงแƒแƒšแƒ‘แƒ˜แƒ.

แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒแƒ“ แƒ’แƒแƒ“แƒแƒ•แƒ แƒ—แƒแƒ— แƒแƒ แƒก แƒจแƒแƒ แƒ˜แƒก ! แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒ แƒ“แƒแƒฅแƒ›แƒœแƒ˜แƒก แƒขแƒ˜แƒžแƒก แƒšแƒแƒ’แƒ˜แƒœแƒแƒ“.

const isTrue  = !0;
const isFalse = !1;
const alsoFalse = !!0;
 
console.log(true); // Result: true
console.log(typeof true); // Result: "boolean"

แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ แƒกแƒ˜แƒ›แƒ”แƒ‘แƒ˜แƒแƒœแƒ˜

แƒขแƒ˜แƒžแƒ˜แƒก แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ

แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ แƒ›แƒ—แƒ”แƒšแƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ“แƒแƒœ แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒจแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒœแƒแƒ˜แƒ แƒแƒ“.

const val = 1 + "";
 
console.log(val); // Result: "1"
console.log(typeof val); // Result: "string"

แƒ’แƒแƒ“แƒแƒ˜แƒงแƒ•แƒแƒœแƒ”แƒ— แƒ›แƒ—แƒ”แƒš แƒ แƒ˜แƒชแƒฎแƒ•แƒจแƒ˜

แƒขแƒ˜แƒžแƒ˜แƒก แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ

แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ— แƒกแƒแƒžแƒ˜แƒ แƒ˜แƒกแƒžแƒ˜แƒ แƒ แƒขแƒ แƒแƒœแƒกแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒแƒกแƒ”.

let int = "15";
int = +int;
 
console.log(int); // Result: 15
console.log(typeof int); Result: "number"

แƒ”แƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒขแƒ˜แƒžแƒ˜แƒก แƒ แƒ”แƒ’แƒฃแƒšแƒแƒ แƒฃแƒš แƒชแƒ˜แƒคแƒ แƒฃแƒš แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ–แƒ” แƒ’แƒแƒ“แƒแƒกแƒแƒงแƒ•แƒแƒœแƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒช แƒ”แƒก แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒฅแƒ•แƒ”แƒ›แƒแƒ—:

console.log(+true);  // Return: 1
console.log(+false); // Return: 0

แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช + แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒžแƒ แƒ”แƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒจแƒ”แƒ”แƒ แƒ—แƒ”แƒ‘แƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ แƒ“แƒ แƒแƒ แƒ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜. แƒแƒ›แƒ˜แƒก แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœ แƒแƒกแƒแƒชแƒ˜แƒšแƒ”แƒ‘แƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒขแƒ˜แƒšแƒ“แƒ”แƒ‘แƒ˜: ~~. แƒ”แƒก แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ แƒฃแƒ“แƒ แƒ˜แƒก -n-1-แƒก. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, ~15 แƒฃแƒ“แƒ แƒ˜แƒก -16-แƒก.

แƒ–แƒ”แƒ“แƒ˜แƒ–แƒ”แƒ“ แƒแƒ แƒ˜ แƒขแƒ˜แƒšแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฃแƒแƒ แƒงแƒแƒคแƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒแƒก, แƒ แƒแƒ“แƒ’แƒแƒœ - (- - n - 1) - 1 = n + 1 - 1 = n. แƒกแƒฎแƒ•แƒ แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒ˜แƒ— แƒ แƒแƒ› แƒ•แƒ—แƒฅแƒ•แƒแƒ—, ~-16 แƒฃแƒ“แƒ แƒ˜แƒก 15-แƒก.

const int = ~~"15"
console.log(int); // Result: 15
console.log(typeof int); Result: "number"

<Quick Powers

แฒแฒžแฒ”แฒ แฒแฒชแฒ˜แฒ”แฒ‘แฒ˜

ES7-แƒ“แƒแƒœ แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒฃแƒšแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ”แƒฅแƒกแƒžแƒแƒœแƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ **, แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒ˜แƒ›แƒซแƒšแƒแƒ•แƒ แƒ”แƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒ”แƒœแƒแƒ’แƒ แƒแƒ›แƒ. แƒ”แƒก แƒ‘แƒ”แƒ•แƒ แƒแƒ“ แƒฃแƒคแƒ แƒ แƒกแƒฌแƒ แƒแƒคแƒ˜แƒ, แƒ•แƒ˜แƒ“แƒ แƒ” Math.pow(2, 3) แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ. แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒแƒœแƒก, แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒžแƒฃแƒœแƒฅแƒขแƒ˜ แƒจแƒ”แƒ“แƒ˜แƒก แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ˜แƒก แƒฉแƒแƒ›แƒแƒœแƒแƒ—แƒ•แƒแƒšแƒจแƒ˜, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ’แƒแƒœ แƒแƒ  แƒแƒ แƒ˜แƒก แƒœแƒแƒฎแƒกแƒ”แƒœแƒ”แƒ‘แƒ˜.

console.log(2 ** 3); // Result: 8

แƒ˜แƒก แƒแƒ  แƒฃแƒœแƒ“แƒ แƒแƒ’แƒ•แƒ”แƒ แƒ˜แƒแƒก ^ แƒกแƒ˜แƒ›แƒ‘แƒแƒšแƒแƒกแƒ—แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ”แƒฅแƒกแƒžแƒแƒœแƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ›แƒแƒ’แƒ แƒแƒ› JavaScript-แƒจแƒ˜ แƒ”แƒก แƒแƒ แƒ˜แƒก XOR แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜.

ES7-แƒ›แƒ“แƒ” ** แƒ›แƒแƒšแƒกแƒแƒฎแƒ›แƒแƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒแƒ“แƒ แƒ’แƒแƒ›แƒแƒ”แƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒœแƒแƒ— แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ‘แƒแƒ–แƒ˜แƒก 2-แƒ˜แƒก แƒกแƒ˜แƒ›แƒซแƒšแƒแƒ•แƒ แƒ”แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ‘แƒ˜แƒขแƒ˜แƒฃแƒ แƒ˜ แƒ›แƒแƒ แƒชแƒฎแƒ”แƒœแƒ แƒชแƒ•แƒšแƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— <<:

Math.pow(2, n);
2 << (n - 1);
2**n;

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, 2 << 3 = 16 แƒฃแƒ“แƒ แƒ˜แƒก 2 ** 4 = 16-แƒก.

แƒแƒ—แƒฌแƒ˜แƒšแƒแƒ“แƒ˜ แƒ›แƒ—แƒ”แƒš แƒ แƒ˜แƒชแƒฎแƒ•แƒจแƒ˜

แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜ / แƒขแƒ˜แƒžแƒ˜แƒก แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ

แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— float-แƒ˜แƒก แƒ’แƒแƒ“แƒแƒงแƒ•แƒแƒœแƒ แƒ›แƒ—แƒ”แƒš แƒ แƒ˜แƒชแƒฎแƒ•แƒแƒ“, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— Math.floor(), Math.ceil() แƒแƒœ Math.round(). แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒฃแƒคแƒ แƒ แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒ’แƒ–แƒ, แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— |, แƒแƒœแƒฃ OR แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒก.

console.log(23.9 | 0);  // Result: 23
console.log(-23.9 | 0); // Result: -23

แƒฅแƒชแƒ”แƒ•แƒ | แƒ“แƒ˜แƒ“แƒฌแƒ˜แƒšแƒแƒ“ แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ˜แƒ›แƒแƒ–แƒ”, แƒ’แƒแƒฅแƒ•แƒ— แƒ—แƒฃ แƒแƒ แƒ แƒกแƒแƒฅแƒ›แƒ” แƒ“แƒแƒ“แƒ”แƒ‘แƒ˜แƒ— แƒ—แƒฃ แƒฃแƒแƒ แƒงแƒแƒคแƒ˜แƒ— แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ—แƒแƒœ, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ”แƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒจแƒ”แƒกแƒแƒคแƒ”แƒ แƒ˜แƒกแƒ˜แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ˜แƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ—แƒฃ แƒ“แƒแƒ แƒฌแƒ›แƒฃแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒฎแƒแƒ แƒ— แƒ˜แƒ›แƒแƒจแƒ˜, แƒ แƒแƒกแƒแƒช แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ—.

n | 0 แƒแƒจแƒแƒ แƒ”แƒ‘แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒก แƒแƒ—แƒฌแƒ˜แƒšแƒแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒงแƒแƒคแƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒแƒ—แƒ•แƒšแƒ˜แƒก แƒแƒ—แƒฌแƒ˜แƒšแƒแƒ“แƒก แƒ›แƒ—แƒ”แƒš แƒ แƒ˜แƒชแƒฎแƒ•แƒแƒ›แƒ“แƒ”.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒ˜แƒฆแƒแƒ— แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒ“แƒแƒ›แƒ แƒ’แƒ•แƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒ”แƒคแƒ”แƒฅแƒขแƒ˜ ~~-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ›แƒ—แƒ”แƒš แƒ แƒ˜แƒชแƒฎแƒ•แƒแƒ“ แƒ˜แƒซแƒฃแƒšแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ’แƒแƒ“แƒแƒงแƒ•แƒแƒœแƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒฃแƒชแƒ•แƒšแƒ”แƒšแƒ˜ แƒ แƒฉแƒ”แƒ‘แƒ.

แƒ‘แƒแƒšแƒ แƒœแƒแƒ›แƒ แƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ

OR แƒแƒžแƒ”แƒ แƒแƒขแƒแƒ แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ“แƒแƒœ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒก แƒแƒ›แƒแƒกแƒแƒฆแƒ”แƒ‘แƒแƒ“. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒœ แƒแƒ  แƒ’แƒ•แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ:

let str = "1553";
Number(str.substring(0, str.length - 1));

แƒแƒ›แƒ˜แƒก แƒœแƒแƒชแƒ•แƒšแƒแƒ“ แƒฉแƒ•แƒ”แƒœ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ•แƒฌแƒ”แƒ แƒ—:

console.log(1553 / 10   | 0)  // Result: 155
console.log(1553 / 100  | 0)  // Result: 15
console.log(1553 / 1000 | 0)  // Result: 1

แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ

แƒ™แƒšแƒแƒกแƒ”แƒ‘แƒ˜

ES6 แƒ˜แƒกแƒ แƒ˜แƒก แƒแƒฆแƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒ™แƒšแƒแƒกแƒ˜แƒก แƒ›แƒ”แƒ—แƒแƒ“แƒ”แƒ‘แƒจแƒ˜ แƒ“แƒ แƒ˜แƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ‘แƒ แƒกแƒแƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒฃแƒšแƒ. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒ”แƒ›แƒจแƒ•แƒ˜แƒ“แƒแƒ‘แƒแƒ— แƒ’แƒแƒœแƒ›แƒ”แƒแƒ แƒ”แƒ‘แƒ˜แƒ— แƒ’แƒแƒ›แƒแƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ this.myMethod = this.myMethod.bind(this)!

import React, { Component } from React;
 
export default class App extends Compononent {
  constructor(props) {
  super(props);
  this.state = {};
  }
 
myMethod = () => {
    // This method is bound implicitly!
  }
 
render() {
    return (
      <>
        <div>
          {this.myMethod()}
        </div>
      </>
    )
  }
};

แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ

แƒ›แƒแƒกแƒ˜แƒ•แƒ”แƒ‘แƒ˜

แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒ“แƒแƒœ, แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒฃแƒคแƒ แƒ แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒ›แƒ”แƒ—แƒแƒ“แƒ”แƒ‘แƒ˜, แƒ•แƒ˜แƒ“แƒ แƒ” splice().

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ—แƒฃ แƒ˜แƒชแƒ˜แƒ— แƒแƒ แƒ˜แƒ’แƒ˜แƒœแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒ–แƒแƒ›แƒ, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒกแƒ˜ แƒกแƒ˜แƒ’แƒ แƒซแƒ˜แƒก แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒœแƒแƒ˜แƒ แƒแƒ“ แƒ’แƒแƒ“แƒแƒšแƒแƒฎแƒแƒ—:

let array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
array.length = 4;
 
console.log(array); // Result: [0, 1, 2, 3]

แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒกแƒฎแƒ•แƒ แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒ“แƒ แƒฃแƒคแƒ แƒ แƒกแƒฌแƒ แƒแƒคแƒ˜. แƒ—แƒฃ แƒกแƒ˜แƒฉแƒฅแƒแƒ แƒ” แƒ—แƒฅแƒ•แƒ”แƒœแƒ—แƒ•แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜แƒ, แƒแƒฅ แƒแƒ แƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒ˜ แƒแƒ แƒฉแƒ”แƒ•แƒแƒœแƒ˜:

let array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
array = array.slice(0, 4);
 
console.log(array); // Result: [0, 1, 2, 3]

แƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒก แƒ‘แƒแƒšแƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒš(แƒ”แƒ‘)แƒ˜แƒก แƒ“แƒแƒ‘แƒ”แƒญแƒ“แƒ•แƒ

แƒ›แƒแƒกแƒ˜แƒ•แƒ”แƒ‘แƒ˜
แƒ”แƒก แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก slice() แƒ›แƒ”แƒ—แƒแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก.

let array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
 
console.log(array.slice(-1)); // Result: [9]
console.log(array.slice(-2)); // Result: [8, 9]
console.log(array.slice(-3)); // Result: [7, 8, 9]

JSON แƒ™แƒแƒ“แƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ˜แƒ แƒ”แƒ‘แƒ

JSON

แƒจแƒ”แƒกแƒแƒซแƒšแƒแƒ แƒฃแƒ™แƒ•แƒ” แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ“แƒ˜แƒ— JSON.stringify. แƒ˜แƒชแƒแƒ“แƒ˜แƒ—, แƒ แƒแƒ› แƒ˜แƒก แƒ’แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ JSON-แƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ˜แƒ แƒ”แƒ‘แƒแƒจแƒ˜?

stringify() แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒ˜แƒฆแƒ”แƒ‘แƒก แƒแƒ  แƒแƒ แƒแƒกแƒแƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒฃแƒšแƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒก: แƒฉแƒแƒœแƒแƒชแƒ•แƒšแƒ”แƒ‘แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜ JSON-แƒ˜แƒก แƒ’แƒแƒกแƒแƒคแƒ˜แƒšแƒขแƒ แƒแƒ“ แƒ“แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ.

console.log(JSON.stringify({ alpha: 'A', beta: 'B' }, null, 't'));
 
// Result:
// '{
//     "alpha": A,
//     "beta": B
// }'

แƒ”แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜แƒ, แƒ˜แƒ›แƒ”แƒ“แƒ˜ แƒ›แƒแƒฅแƒ•แƒก, แƒ แƒแƒ› แƒงแƒ•แƒ”แƒšแƒ แƒ”แƒก แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ แƒ˜แƒงแƒ. แƒ แƒ แƒฎแƒ แƒ˜แƒ™แƒ”แƒ‘แƒ˜ แƒ˜แƒชแƒ˜แƒ—? แƒ“แƒแƒฌแƒ”แƒ แƒ”แƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ”แƒ‘แƒจแƒ˜.

Skillbox แƒ’แƒ˜แƒ แƒฉแƒ”แƒ•แƒ—:

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ