1, js数组去重的方法
//第一种
???????function unique(ary){
???????????var obj={};
???????????for(var i=0;i<ary.length;i++){
???????????????var cur = ary[i];
???????????????if(obj[cur] == cur){
???????????????????ary[i] = ary[ary.length-1];
???????????????????ary.length--;
???????????????????i--;
???????????????}
???????????????obj[cur] = cur;
???????????}
???????????return ary;
???????}
???????console.log(unique([2,3,2,4,3,5,6,1,1]));
???????//第二种
???????function unique(ary){
???????????var arr1 = [];
???????????var obj = {};
???????????for(var i=0;i<ary.length;i++){
???????????????if(!obj[ary[i]]){
???????????????????arr1.push(ary[i]);
???????????????????obj[ary[i]] = 1;
???????????????}
???????????}
???????????return arr1;
???????};
???????var arr = [3,1,1,2,2,3,3,4,4];
???????console.log(unique(arr));
2、js类数组(arguments,dom元素集合)转化为数组
let arrayLike = {
???‘0‘ : ‘a‘,
???‘1‘ : ‘b‘,
???‘2‘ : ‘c‘,
???length : 3
};
1、Array.prototype.slice.call()
利用数组slice的方法实现
let arr1 = Array.prototype.slice.call(arrayLike);
2、[].slice.call();
let arr2 = [].slice.call(arrayLike);
3、Array.from()
ES6新增的转换数组的方法
let arr3 = Array.from(arrayLike);
4、扩展运算符(…)
ES6中新增的方法,扩展运算符(…)也可以将某些数据结构转为数组
let arr4 = [...arrayLike]
原生js常用的方法
原文地址:https://www.cnblogs.com/xiaobai-y/p/10171720.html