1、数组的插入:
//从数组后插入
var arr = [1,2,3,4,5];
//old
arr.push(6);
//new 快43%
arr[arr.length] = 6;
//从数组前插入
var arr = [1,2,3,4,5];
//old
arr.unshift(0);
//new 快98%
[0].concat(arr);
2、字符串数字转num:使用减号也可以让之变为负值
var n = '1';
console.log(typeof +n);
3、数组清空
let list = [1,2,3,4];
//old
list = [];
//new
list.length = 0;
list =[] 将一个变量指定个引用到那个数组,而其他引用都不受影响。这意味着,对于先前数组的内容的引用仍然保留在内存中,从而导致内存泄漏。
· list.length = 0 删除数组内的所有东西,这不需要引用任何其他的东西
然而,如果你有一个copy的数组(A和copy-A),如果你使用list.length = 0 删除其内容,副本也会失去它的内容。
4、取出一个数组中的最大值和最小值
var numbers = [1, 323, 22, -111, 56565 , 334, 2143123213, -567989];
var maxInNumbers = Math.max.apply(Math, numbers);
var minInNumbers = Math.min.apply(Math, numbers);
5、Debugger断点
就是通过在代码中添加"debugger;"语句,当代码执行到该语句的时候就会自动断点。接下去的操作就跟在Sources面板添加断点调试几乎一模一样,唯一的区别在于调试完后需要删除该语句。
6、数组深度拷贝
arr.slice(0)
7、对象深度拷贝
JSON.parse(JSON.stringify(obj))
8、数组内排序
let listPrice = this.settingList.slice(0)
listPrice.sort((o, j) => {
return o.rmbNum - j.rmbNum
})