在js中, 有一些常用的奇淫技巧, 可以让你少写很多代码, 但是你不一定见过这种写法, 下面就记录几个js的奇淫技巧, 防止自己在以后看见的时候懵逼
数组去重
1 2 3
| var arr = [1, 2, 2, 3, 4, 5, 6, 6, 7, 7, 8, 4, 2, 1]; var uniqueArr = [...new Set(arr)]; console.log(uniqueArr);
|
打乱数组元素
1 2 3 4
| var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; console.log(arr.sort(function() { return Math.random() - 0.5; }));
|
碾平二维数组
1 2
| var entries = [1, [2, 5], [6, 7], 9]; var flatEntries = [].concat(...entries);
|
数字转字符串
1 2
| var convertedNumber = 1 + ""; console.log(typeof convertedNumber, convertedNumber);
|
字符串转数字
1 2 3 4 5 6
| convertedString = "123"; console.log(+convertedString);
string = "hello"; console.log(+string);
|
全部替换
1 2 3
| var example = "potato potato"; console.log(example.replace(/pot/, "tom")); console.log(example.replace(/pot/g, "tom"));
|
使用短路运算符
1 2 3 4 5 6 7
| if (available) { addToCart(); }
available && addToCart();
|
动态属性名
1 2 3 4 5 6
| const dynamic = 'flavour'; var item = { name: 'Coke', [dynamic]: 'Cherry' } console.log(item);
|