js 操作方法
Posted 阿狸i
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 操作方法相关的知识,希望对你有一定的参考价值。
concat重构:
function concat(arr){
var array=[];
var index=0;
for(var i=0;i<arr.length;i++,index++){
array[index]=arr[i];
}
for(var j=1;j<arguments.length;j++,index++){
if(arguments[j].constructor===Array){
for(var k=0;k<arguments[j].length;k++,index++){
array[index]=arguments[j][k];
}
index--;
}else{
array[index]=arguments[j];
}
}
return array;
}
arr.slice(从什么位置开始,截取到什么位置之前);//返回一个新数组,原数组不改变
var arr1=arr.slice();//复制一个新数组
var arr1=arr.slice(1);//从第几项复制到尾部
var arr1=arr.slice(-2);//从倒数第二位复制到尾部
var arr1=arr.slice(2,3);//从第二位复制到第三位之前
eg:
slice重构:
function slice(arr,start,end){
start=Number(start);
end=Number(end);
if(isNaN(start)) start=0;
if(isNaN(end)) end=arr.length;
if(start<0) start=start+arr.length;
if(end<0) end=end+arr.length;
var a=[];
for(var i=start,j=0;i<end;i++,j++){
a[j]=arr[i];
}
return a;
}
var arr1=slice(arr,2,-1);
console.log(arr1,arr);
splice()方法 删除 插入 替换
给数组中添加、删除、替换一个或者多个元素,返回被删除元素组成的数组
arr.splice(从什么位置开始,删除多少个元素,添加的元素...);
var arr=[1,3,5,7,9,2,4,6,8,10];
// var arr1=arr.splice();//创建一个空数组
// var arr1=arr.splice(0);//将数组的所有元素传递给新数组
// 负数指从后向前数
// var arr1=arr.splice(-2);//从数组的倒数第二位开始截取到尾部
// var arr1=arr.splice(2,2);//从第二位开始删除2个元素
// var arr1=arr.splice(2,0,12,14);//插入元素13,14,插入在第二位
// var arr1=arr.splice(2,2,12,14);//替换元素,删除两位并且插入12,14
// console.log(arr1,arr);
splice重构:
function splice(arr,start,count){
var a=[];
start=Number(start);
count=Number(count);
if(isNaN(start)) return a;
if(start<0) start+=arr.length;
if(isNaN(count)) count=arr.length-start;
for(var i=start,j=0;i<arr.length;i++,j++){
if(j<count)a.push(arr[i]);
arr[i]=arr[i+count];
}
for(var l=0;l<arguments.length-3;l++){
for(var m=arr.length-1;m>=start+l;m--){
arr[m+1]=arr[m];
}
}
for(var n=3;n<arguments.length;n++){
arr[start+n-3]=arguments[n];
}
for(var k=0;k<count;k++){
arr.length--;
}
return a;
}
var arr1=splice(arr,-2,2,10,11,12);
console.log(arr1,arr);
以上是关于js 操作方法的主要内容,如果未能解决你的问题,请参考以下文章
node.js零基础详细教程:node.js操作mongodb,及操作方法的封装