ホームページ > 記事 > ウェブフロントエンド > JavaScript 配列の学習
1 配列の作成
var arr1 = new Array(); var arr2=[1,2,3];
2 配列でよく使われるメソッド:
push、pop、shift、unshift、splice、slice、sort、reverse
2.1 Push メソッド: 要素の最後に要素を挿入
var arr=[1,2,3]; var result = arr.push(1,3,4);//返回新数组的长度 console.log("arr:"+arr); console.log("result:"+result);
Result :
arr:1,2,3,1,3,4
result:6
2.2 Popメソッド: 要素の最後にある要素をポップします
var arr=[1,2,3]; var result = arr.pop();//返回弹出元素的值 console.log("arr:"+arr); console.log("result:"+result);
Result:
arr:1,2
result:3
2.3 シフトメソッド: 要素の先頭に要素をポップします
var arr=[1,2,3]; var result = arr.shift();//返回弹出元素的值 console.log("arr:"+arr); console.log("result:"+result);
結果:
arr:2,3
結果:1
2.4 unshift メソッド: 要素の先頭に要素を挿入します要素の 1 位
var arr=[1,2,3]; var result = arr.unshift(4,5);//返回新数组的长度 console.log("arr:"+arr); console.log("result:"+result);
Result:
arr :4,5,1,2,3
result:5
2.5 splice メソッド: 配列をインターセプトし、データを挿入し、配列自体を直接操作します
var arr=[1,2,3,4,5]; arr.splice(1,2,3,4); console.log("arr:"+arr);
結果:
arr:1,3,4,4 ,5
分析:
最初のパラメーター: インターセプトの開始位置
2 番目のパラメーター: インターセプトの数
2 番目のパラメーターの後:挿入されたデータ。3 番目のパラメータがない場合は挿入されません
2.6 スライスメソッド: 配列をインターセプトしますが、配列自体は操作しません
var arr=[1,2,3,4,5]; var result =arr.slice(2,4); console.log("arr:"+arr); console.log("result:"+result);
結果:
arr:1,2,3 ,4,5
結果:3,4
分析:
最初のパラメーター: インターセプトの開始位置は閉区間です
2 番目のパラメーター: インターセプトの終了位置は開区間です
例: [ 2,4)
2.7 concat メソッド: 配列を結合しますが、配列自体は操作しません
var arr1 =[1,2,3]; var arr2=[3,4,5]; var result = arr1.concat(arr2); console.log("arr1:"+arr1); console.log("arr2:"+arr2); console.log("result:"+result);
Result:
arr1:1,2,3
arr2:3,4,5
result:1, 2,3,3,4,5
2.8 joinメソッド: 配列の各要素に対して 間に要素を挿入しますが、配列自体は操作しません
var arr =[1,2,3]; var result =arr.join("-"); console.log("arr:"+arr); console.log("result:"+result);
Result:
arr:1,2,3
result:1-2-3
2.9 reverse メソッド: 配列内の要素の位置を反転します
var arr =[1,2,3]; var result =arr.reverse(); console.log("arr:"+arr);
Result :
arr:3,2,1
2.10 sort メソッド: 配列内の要素を並べ替えます(不良品)
var arr =[4,10,1,5]; var result =arr.sort(); console.log("arr:"+arr);
結果:
arr:1,10,4,5
分析:
In 比較プロセス中、この10は最初の桁、次に2桁に従って比較され、ランク付けされます1の後ろと4の前。
2.11sortメソッドの拡張
var arr =[4,10,1,5]; function compare(value1,value2){//自定义排序规则 if(value1>value2){ return 1; }else if(value1<value2){ return -1; }else{ return 0; } } var result =arr.sort(compare);使用自定义的排序规则 实现从小到大排序 要想实现从大到小 修改排序规则 console.log("arr:"+arr);
結果:
arr:1,4,5,10