詳解JavaScript對(duì)數(shù)組操作(添加/刪除/截取/排序/倒序)
js對(duì)數(shù)組對(duì)象的操作以及方法的使用
如何聲明創(chuàng)建一個(gè)數(shù)組對(duì)象:
var arr = new Array();
或者
var arr = [];
如何移除所有數(shù)組中數(shù)據(jù)?
arrayJson.dataList.splice(0,arr.length);
如何指定位置對(duì)數(shù)組對(duì)象的添加,如何將指定元素添加到數(shù)組中間位置?
/**
* 假設(shè)數(shù)組的長度值為偶數(shù),如何將指定元素添加到數(shù)組中間位置。
*/
function array_middle_insert() {
var arr = ['1','2','3','4','5','6'];
if(0 == arr.length % 2) { //偶數(shù)
arr.splice(arr.length / 2,0,'中間添加');
}
//["1","2","3","中間添加","4","5","6","7"]
console.log(JSON.stringify(arr));
}
數(shù)組對(duì)象方法的是使用介紹:
cancat()
/**
* concat:連接兩個(gè)或者多個(gè)數(shù)組,并且返回該數(shù)組
* 語法:array.concat(object,object,......);
*/
function array_concat() {
var arr = [{index:'0'},{address:'1'}];
var arr_1 = [{index:'3'},{index:'4'}];
var newArr = arr.concat(arr_1);
//[{"index":"0"},{"address":"1"},{"index":"3"},{"index":"4"}]
console.log(JSON.stringify(newArr));
}
join()
/**
* join():通過指定字符對(duì)數(shù)據(jù)進(jìn)行分割,返回字符串。
* jon(分隔符);
*/
function array_join() {
var arr = ['1','2','3'];
var str = arr.join('-');
//1-2-3
console.log(str);
}
pop()
/**
* pop():刪除數(shù)組的最后一個(gè)對(duì)象,返回該刪除元素的值
*/
function array_pop() {
var arr = [{index:'0'},{address:'1'}];
var pop_data = arr.pop();
//{"address":"1"}
console.log(JSON.stringify(pop_data));
//[{"index":"0"}]
console.log(JSON.stringify(arr));
}
push()
/**
* push:向數(shù)組末尾添加一個(gè)或者多個(gè)對(duì)象。
* array.push(newObject1,newObject2,.....);
*/
function array_push() {
//實(shí)例化一個(gè)數(shù)組對(duì)象
var arr = new Array();
var obj_1 = { index:'1', index:'2'};
var obj_2 = { index:'3', index:'3'};
arr.push(obj_1,obj_2);
//[{"index":"2"},{"index":"3"}]
console.log(JSON.stringify(arr));
}
shift()
/**
* shift():該方法用戶刪除數(shù)組的第一個(gè)對(duì)象,并返回刪除的元素
*/
function array_shift() {
var arr = [{index:'0'},{address:'1'}];
var shift_data = arr.shift();
//{"index":"0"}
console.log(JSON.stringify(shift_data));
//[{"address":"1"}]
console.log(JSON.stringify(arr));
}
slice()
/**
* slice():從已知數(shù)組中返回指定選中的數(shù)據(jù),該操作不會(huì)修改原數(shù)組的數(shù)據(jù)
* slice(start,end);
*/
function array_slice() {
var arr = ['1','2','3','4','5'];
var new_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():方法用戶對(duì)數(shù)組的排序
* sort(sortby) sortby可選,必須是函數(shù)。如調(diào)用方法沒有使用參數(shù),則按字母順序進(jìn)行排序。
*/
function array_sory() {
var arr = [{index:'500'},{index:'40'},{index:'100'},{index:'50'}];
var new_array = arr.sort(function(a,b) {
var n1 = Number(a.index);
var n2 = Number(b.index);
return n1 - n2;
});
//[{"index":"40"},{"index":"50"},{"index":"100"},{"index":"500"}]
console.log(JSON.stringify(new_array));
}
splice()
/**
* 向數(shù)組中刪除/添加對(duì)象,并返回被刪除的元素。
* splice(index,count,item1,item2,......);
* index:規(guī)定刪除/添加項(xiàng)目的起始位置,使用負(fù)數(shù)從數(shù)組的結(jié)尾處規(guī)定位置。
* count:規(guī)定要?jiǎng)h除項(xiàng)目的數(shù)量
* item1,item2...:向項(xiàng)目中添加添加新的對(duì)象
*/
function array_splice() {
var arr = ['1','2','3'];
var new_array = arr.splice(0,2,'4','5');
//["1","2"]
console.log(JSON.stringify(new_array));
//["4","5","3"]
console.log(JSON.stringify(arr));
}
unshift()
/**
* 向數(shù)組開頭添加一個(gè)或者多個(gè)元素,并返回新的長度。
*/
function array_unshift() {
var arr = [{index:'0'},{address:'1'}];
var obj_1 = {index:'2'};
var obj_2 = {index:'3'};
var length = arr.unshift(obj_1,obj_2);
//4
console.log(length);
//[{"index":"2"},{"index":"3"},{"index":"0"},{"address":"1"}]
console.log(JSON.stringify(arr));
}
toString():將數(shù)組轉(zhuǎn)換成字符串,并返回該結(jié)果。不會(huì)改變?cè)瓟?shù)組的數(shù)據(jù)。
toLocaleString():將數(shù)組裝換成本地字符,并返回結(jié)果,用“,”分割。類似toString 方法。
reverse():該該方法顛倒數(shù)組的順序
一下舉栗聲明json數(shù)組串較為復(fù)雜并且靈活的格式。
[
{
"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對(duì)數(shù)組操作詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
深入理解JavaScript系列(16) 閉包(Closures)
本章我們將介紹在JavaScript里大家經(jīng)常來討論的話題 —— 閉包(closure)。閉包其實(shí)大家都已經(jīng)談爛了。盡管如此,這里還是要試著從理論角度來討論下閉包,看看ECMAScript中的閉包內(nèi)部究竟是如何工作的2012-04-04
微信小程序點(diǎn)擊按鈕動(dòng)態(tài)切換input的disabled禁用/啟用狀態(tài)功能
這篇文章主要介紹了微信小程序點(diǎn)擊按鈕動(dòng)態(tài)切換input的disabled禁用/啟用狀態(tài)功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
js showModalDialog參數(shù)的使用詳解
本篇文章主要是對(duì)js中showModalDialog參數(shù)的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2014-01-01
js實(shí)現(xiàn)購物網(wǎng)站商品放大鏡效果
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)購物網(wǎng)站商品放大鏡效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
JS彈窗 JS彈出DIV并使整個(gè)頁面背景變暗功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了JS彈窗 JS彈出DIV并使整個(gè)頁面背景變暗功能的實(shí)現(xiàn)代碼,需要的朋友可以參考下2018-04-04

