Js Trick
You can read this Article to know What new feature brings in since ES6
Conversion
Any => Boolean
!!false; // false
!!undefined; // false
!!null; // false
!!NaN; // false
!!0; // false
!!''; // false
!!variable == Boolean(variable);String => Integer
Number('100'); //100
+'100'; // 100
+'abc'; // NAN
Object <=> Array
Array => Object
let arr = [1, 2, 3, 4, 5];
let objFromArr1 = Object.assign({}, arr);
let objFromArr2 = { ...arr };
console.log(objFromArr1); // { '0': 1, '1': 2, '2': 3, '3': 4, '4': 5 }
console.log(objFromArr2); // { '0': 1, '1': 2, '2': 3, '3': 4, '4': 5 }
let pair = [
['key1', 'val1'],
['key2', 'val2'],
]; // Map works as well
let objFromPair = Object.fromEntries(arr); // ES10
console.log(objFromPair); //{ key1: 'val1', key2: 'val2' }
Object.fromEntries(arr)included in ES10 (ES2019). Before ES10 or convert a complex array,arr.reduce(()=>{}, {})is a good method
