- for of
- Trenary
- Short Circuit
- Spread Operator
- Destructure
- Arrow Function
- Property Shorthand
- Method Shorthand
for of
iterate over an array
const names = ['nisim', 'shomo', 'david'];
instead of
for (let i = 0; i < names.length; i++) {
const name = names[i];
console.log(name);
}
for of
syntax
for (const name of names) {
console.log(name);
}
Trenary
instead of
function printEvenOrOdd(num) {
if (num % 2 === 0) {
console.log('even');
}
else {
console.log('odd');
}
}
use trenary
function printEvenOrOdd(num) {
console.log(num % 2 === 0 ? 'even' : 'odd');
}
Short Circuit
great documentation of mdn
Spread Operator
const a1 = ['a', 'b'];
const a2 = ['c', 'd', 'e'];
instead of
a1.concat(a2); // ['a', 'b', 'c', 'd', 'e']
use spread
[...a1, ...a2]; // ['a', 'b', 'c', 'd', 'e']
Destructure
Arrow Function
without
const arr = [1, 2, 3].map(function(curNum) {
return 2 * curNum;
});
// [2, 4, 6]
with
const arr = [1, 2, 3].map(curNum => 2 * curNum);
// [2, 4, 6]
arrow function and destructure
const nisim = {fname: 'nisim', lname: 'cohen'}
const shlomo = {fname: 'shlomo', lname: 'levi'}
const david = {fname: 'david', lname: 'peretz'}
const arr = [nisim, shlomo, david];
const fullArr.map(function(obj) {
return `${obj.fname} ${obj.lname}`;
});
with arrow function
const nisim = {fname: 'nisim', lname: 'cohen'}
const shlomo = {fname: 'shlomo', lname: 'levi'}
const david = {fname: 'david', lname: 'peretz'}
const arr = [nisim, shlomo, david];
const fullArr.map(obj => `${obj.fname} ${obj.lname}`);
with destructure
const nisim = {fname: 'nisim', lname: 'cohen'}
const shlomo = {fname: 'shlomo', lname: 'levi'}
const david = {fname: 'david', lname: 'peretz'}
const arr = [nisim, shlomo, david];
const fullArr = arr.map(({ fname, lname }) =>
`${fname} ${lname}`);
Property Shorthand
const david = 42;
const shlomo = 666;
const nisim = {
david: david,
shlomo: shlomo
}
const nisim = {
david,
shlomo
}
Method Shorthand
const nisim = {
shlomo: 42,
sayHi: function() {
console.log('hi');
},
sayBye: function() {
console.log('bye');
}
};
nisim.sayHi();
nisim.sayBye();
const nisim = {
shlomo: 42,
sayHi() {
console.log('hi');
},
sayBye() {
console.log('bye');
}
};
nisim.sayHi();
nisim.sayBye();