JavaScriptの中でArayの実用的な操作の技巧は分かち合います.
5208 ワード
一、アレについて
Arayの作成は非常に柔軟で、Arayのコンストラクタを使ってもいいし、配列の「字面量」を直接作成することもできます.
typeofを使って判定したらObjectに戻ります.
プッシュ方法
注意:①行列ではなく、行列の長さを返します.
②この方法は元の配列を変えます!
他の2つのオブジェクトの配列が結合される場合は、次のようになります.
配列を対応するパラメータで区切り、文字列で返します.空のパラメータでは'、'で区切ります.この方法は元の配列を変えません.
複数の配列を結合して、新しい配列を返しますが、元の配列は変わりません.
現在のメンバ
以上がこの文章の全部です.皆さんの勉強や仕事に一定の助けを与えたいです.もし疑問があれば、メッセージを残して交流してもいいです.
Arayの作成は非常に柔軟で、Arayのコンストラクタを使ってもいいし、配列の「字面量」を直接作成することもできます.
var arr = new Array(); //[]
var brr = Array(); //[]
var arr = Array(3); //[]
arr.length; //3 3
var arr = Array(22,33,'qq',{}); //[22, 33, "qq", Object]
var brr = [22,33,'qq',{}]; //
ArayはJavaScriptの内蔵オブジェクトです.はい、配列ですが、対象です.typeofを使って判定したらObjectに戻ります.
Array.isArray
方法は、そのタイプをより正確に判断することができる.
var a = [];
typeof a; //object
Array.isArray(a); //true
二、常用方法プッシュ方法
push
方法は、配列の端に1つ以上の要素を追加し、変更された配列の長さを返します.注意:①行列ではなく、行列の長さを返します.
②この方法は元の配列を変えます!
var arr = Array(22,33,'qq',{});
arr.push('weibo'); //5
arr //[22, 33, "qq", {}, "weibo"]
二つの配列を結合したい場合は、このように使用する必要があります.
var a = [22,33];
var b = [44,55];
Array.prototype.push.apply(a, b)
//
a.push.apply(a, b)
//
a.push(44,55); // a = [22,33,44,55];
以下のように書いてはいけません.
a.push(b);
a; //[22,33,[44,55]]
a.length; // 3 !!
console.log(a); //[22, 33, Array[2]]
a.push(b)
と直接書きます.bはaに加えられた要素と考えられます.理想的な効果は得られません.他の2つのオブジェクトの配列が結合される場合は、次のようになります.
var a = [
{name: 'Stark', value: 'Ironman'},
{name: 'Cap' , value: 'Oldman'}
];
var b = [
{name: 'Jerry', email: '[email protected]'},
{name: 'Lory' , email: '[email protected]'},
{name: 'susan', email: '[email protected]'}
];
//
a.push(b); //3
console.log(a); //[Object, Object, Array[3]]
//
a.push.apply(a.b); //5
console.log(a); //[Object, Object, Object, Object, Object]
ポップ()方法push
とは対照的に、配列の最後の要素を削除し、この削除された要素を返します.
var a = ['qq', 'weibo', 'weixin'];
a.pop(); // 'weixin'
a; // ['qq', 'weibo']
ジョンメソッド配列を対応するパラメータで区切り、文字列で返します.空のパラメータでは'、'で区切ります.この方法は元の配列を変えません.
var a = [1, 2, 3, 4];
a.join(' ') // '1 2 3 4'
a.join(' | ') // "1 | 2 | 3 | 4"
var b = a.join() // "1,2,3,4"
console.log(a); // [1, 2, 3, 4]
console.log(b); // "1,2,3,4"
concat()方法複数の配列を結合して、新しい配列を返しますが、元の配列は変わりません.
var a = [22,33];
var b = [44,55];
var c = a.concat(b);
console.log(a); //[22, 33]
console.log(b); //[44, 55]
console.log(c); //[22, 33, 44, 55]
var a = [{name: 'tom', email: '[email protected]'},
{name: 'peter', email: '[email protected]'}];
var b = [{name: 'Jerry', email: '[email protected]'},
{name: 'Lory', email: '[email protected]'},
{name: 'susan', value: '[email protected]'}];
var c = a.concat(b);
c; // [{name: 'tom', email: '[email protected]'},
// {name: 'peter', email: '[email protected]'},
// {name: 'Jerry', email: '[email protected]'},
// {name: 'Lory', email: '[email protected]'},
// {name: 'susan', value: '[email protected]'}]
map()メソッドmap
方法は、配列の各メンバに関数を順次呼び出し、関数処理された新しい配列を返しますが、元の配列は変更されません.
var numbers = [1, 2, 3];
var num = numbers.map(function (n) { // [2, 4, 6]
return n * 2;
});
numbers; //[1,2,3]
map
方法で呼び出された関数のパラメータが一つの場合、このパラメータは配列の現在のメンバを表します.パラメータが三つの場合は順次現在のメンバ
elem
、インデックスindex
、元の配列自体arr
var brr = [1, 2, 3].map( function(elem, index, arr) {
return elem * index;
});
brr; // [0, 2, 6]
map
方法はまた、第2のパラメータを受け入れることができ、コールバック関数が実行されるときthis
が指すオブジェクトを表す.
var arr = ['a', 'b', 'c'];
var brr = [0, 2].map(function(e){
return this[e];
}, arr)
brr; // ['a', 'c']
アプリケーションでは、時々ajax技術を使用してパラメータ配列を動的に利用して一つのurl要求に変換する必要がある場合、map
方法は非常に便利である.
var b = [
{name: 'Jerry', email: '[email protected]'},
{name: 'Lory', email: '[email protected]'},
{name: 'susan', value: '[email protected]'}];
var url = b.
map(function(n){
return n.name + "=" + n.email
})
.join("&");
console.log(url);
//[email protected]&[email protected]&[email protected]
そして、urlの前にipアドレスとactionと方法を加えると、ajaxに必要な動的urlのつなぎ合わせができます.例えば、
var endURL = "localhost:8080/XXXX/" + eventAction + "!" + operation + "?"
+ url;
締め括りをつける以上がこの文章の全部です.皆さんの勉強や仕事に一定の助けを与えたいです.もし疑問があれば、メッセージを残して交流してもいいです.