详解JavaScript对数组操作(添加/删除/截取/排序/倒序)
js对数组对象的操作以及方法的使用
如何声明创建一个数组对象:
vararr=newArray();
或者
vararr=[];
如何移除所有数组中数据?
arrayJson.dataList.splice(0,arr.length);
如何指定位置对数组对象的添加,如何将指定元素添加到数组中间位置?
/** *假设数组的长度值为偶数,如何将指定元素添加到数组中间位置。 */ functionarray_middle_insert(){ vararr=['1','2','3','4','5','6']; if(0==arr.length%2){ //偶数 arr.splice(arr.length/2,0,'中间添加'); } //["1","2","3","中间添加","4","5","6","7"] console.log(JSON.stringify(arr)); }
数组对象方法的是使用介绍:
cancat()
/** *concat:连接两个或者多个数组,并且返回该数组 *语法:array.concat(object,object,......); */ functionarray_concat(){ vararr=[{index:'0'},{address:'1'}]; vararr_1=[{index:'3'},{index:'4'}]; varnewArr=arr.concat(arr_1); //[{"index":"0"},{"address":"1"},{"index":"3"},{"index":"4"}] console.log(JSON.stringify(newArr)); }
join()
/** *join():通过指定字符对数据进行分割,返回字符串。 *jon(分隔符); */ functionarray_join(){ vararr=['1','2','3']; varstr=arr.join('-'); //1-2-3 console.log(str); }
pop()
/** *pop():删除数组的最后一个对象,返回该删除元素的值 */ functionarray_pop(){ vararr=[{index:'0'},{address:'1'}]; varpop_data=arr.pop(); //{"address":"1"} console.log(JSON.stringify(pop_data)); //[{"index":"0"}] console.log(JSON.stringify(arr)); }
push()
/** *push:向数组末尾添加一个或者多个对象。 *array.push(newObject1,newObject2,.....); */ functionarray_push(){ //实例化一个数组对象 vararr=newArray(); varobj_1={index:'1',index:'2'}; varobj_2={index:'3',index:'3'}; arr.push(obj_1,obj_2); //[{"index":"2"},{"index":"3"}] console.log(JSON.stringify(arr)); }
shift()
/** *shift():该方法用户删除数组的第一个对象,并返回删除的元素 */ functionarray_shift(){ vararr=[{index:'0'},{address:'1'}]; varshift_data=arr.shift(); //{"index":"0"} console.log(JSON.stringify(shift_data)); //[{"address":"1"}] console.log(JSON.stringify(arr)); }
slice()
/** *slice():从已知数组中返回指定选中的数据,该操作不会修改原数组的数据 *slice(start,end); */ functionarray_slice(){ vararr=['1','2','3','4','5']; varnew_array=arr.slice(1,arr.length); //["2","3","4","5"] console.log(JSON.stringify(new_array)); //["1","2","3","4","5"] console.log(JSON.stringify(arr)); }
sort()
/** *sort():方法用户对数组的排序 *sort(sortby) sortby可选,必须是函数。如调用方法没有使用参数,则按字母顺序进行排序。 */ functionarray_sory(){ vararr=[{index:'500'},{index:'40'},{index:'100'},{index:'50'}]; varnew_array=arr.sort(function(a,b){ varn1=Number(a.index); varn2=Number(b.index); returnn1-n2; }); //[{"index":"40"},{"index":"50"},{"index":"100"},{"index":"500"}] console.log(JSON.stringify(new_array)); }
splice()
/** *向数组中删除/添加对象,并返回被删除的元素。 *splice(index,count,item1,item2,......); *index:规定删除/添加项目的起始位置,使用负数从数组的结尾处规定位置。 *count:规定要删除项目的数量 *item1,item2...:向项目中添加添加新的对象 */ functionarray_splice(){ vararr=['1','2','3']; varnew_array=arr.splice(0,2,'4','5'); //["1","2"] console.log(JSON.stringify(new_array)); //["4","5","3"] console.log(JSON.stringify(arr)); }
unshift()
/** *向数组开头添加一个或者多个元素,并返回新的长度。 */ functionarray_unshift(){ vararr=[{index:'0'},{address:'1'}]; varobj_1={index:'2'}; varobj_2={index:'3'}; varlength=arr.unshift(obj_1,obj_2); //4 console.log(length); //[{"index":"2"},{"index":"3"},{"index":"0"},{"address":"1"}] console.log(JSON.stringify(arr)); }
toString():将数组转换成字符串,并返回该结果。不会改变原数组的数据。
toLocaleString():将数组装换成本地字符,并返回结果,用“,”分割。类似toString方法。
reverse():该该方法颠倒数组的顺序
一下举栗声明json数组串较为复杂并且灵活的格式。
[ { "dateMonth":"05", "hopeMoney":"12000", "data":[ { "brickId":"1", "brickYear":"2017-05-15", "brickWeek":"星期二", "brckInfo":[ { "bringMoneyOrExpenditure":"5000", "brickClass":"工资", "brickIcon":"ion-ios-star-outline" }, { "bringMoneyOrExpenditure":"-2000", "brickClass":"其他", "brickIcon":"ion-ios-star-outline" } ] }, { "brickId":"1", "brickYear":"2017-05-02", "brickWeek":"星期六", "brckInfo":[ { "bringMoneyOrExpenditure":"10000", "brickClass":"工资", "brickIcon":"ion-ios-star-outline" } ] } ] }, { "dateMonth":"04", "hopeMoney":"12000", "data":[ { "brickId":"1", "brickYear":"2017-04-15", "brickWeek":"星期一", "brckInfo":[ { "bringMoneyOrExpenditure":"5000", "brickClass":"工资", "brickIcon":"ion-ios-star-outline" } ] } ] } ]
以上所述是小编给大家介绍的JavaScript对数组操作详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!