js對數組對象的操作以及方法的使用
如何聲明創建一個數組對象: var arr = new Array(); 或者 var arr = [];
如何移除所有數組中數據?
arrayJson.dataList.splice(0,arr.length);
如何指定位置對數組對象的添加,如何將指定元素添加到數組中間位置?
/** * 假設數組的長度值為偶數,如何將指定元素添加到數組中間位置。 */ function array_middle_insert() { var arr = ['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,......); */ 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():通過指定字符對數據進行分割,返回字符串。 * jon(分隔符); */ function array_join() { var arr = ['1','2','3']; var str = arr.join('-'); //1-2-3 console.log(str); }
pop()
/** * pop():刪除數組的最后一個對象,返回該刪除元素的值 */ 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:向數組末尾添加一個或者多個對象。 * array.push(newObject1,newObject2,.....); */ function array_push() { //實例化一個數組對象 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():該方法用戶刪除數組的第一個對象,並返回刪除的元素 */ 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():從已知數組中返回指定選中的數據,該操作不會修改原數組的數據 * 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():方法用戶對數組的排序 * sort(sortby) sortby可選,必須是函數。如調用方法沒有使用參數,則按字母順序進行排序。 */ 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()
/** * 向數組中刪除/添加對象,並返回被刪除的元素。 * splice(index,count,item1,item2,......); * index:規定刪除/添加項目的起始位置,使用負數從數組的結尾處規定位置。 * count:規定要刪除項目的數量 * item1,item2...:向項目中添加添加新的對象 */ 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()
/** * 向數組開頭添加一個或者多個元素,並返回新的長度。 */ 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():將數組轉換成字符串,並返回該結果。不會改變原數組的數據。 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" } ] } ] } ]