JavaScriptでは、配列の長さは可変であるため、新しいメンバーを直接定義することで配列に追加できます。
コードコピーは次のとおりです。
var o = [2,3,5];
o [3] = 7;
console.log(o); // [2,3,5,7]
この方法に加えて、Push()ステートメントを使用することで同じ目的を達成できます。
コードコピーは次のとおりです。
o.push(11);
console.log(o); // [2,3,5,7,11]
o.push(13,17);
console.log(o); // [2,3,7,11,13,17]
配列の先頭に新しいメンバーを追加する必要がある場合は、UNSHIFT()ステートメントを使用できます。
コードコピーは次のとおりです。
O.Unshift(2014);
console.log(o); // [2014,2,3,7,11,13,17]
O.Unshift(2013、2012);
console.log(o); // [2013,2012,2014、2,3,7,11,13,17]
push()に対応すると、配列の最後からメンバーを削除する必要がある場合は、pop()ステートメントを使用できます。 POP()ステートメントは削除されたメンバーを返し、配列の長さは1に削減されます。
コードコピーは次のとおりです。
var p = o.pop();
console.log(p); // 17
console.log(o.length); // 9
Unshift()に対応して、配列の先頭からメンバーを削除する必要がある場合は、Shift()ステートメントを使用できます。 Shift()ステートメントは削除されたメンバーを返し、配列の長さは1に削減されます。
コードコピーは次のとおりです。
var s = o.shift();
console.log(s); // 2013
console.log(o.length); // 8
Shift()ステートメントとpop()ステートメントに加えて、削除演算子を介して配列内のメンバーを削除することもできます。 Shift()やPOP()とは異なり、配列の長さプロパティは削除操作後も変更されません。つまり、アレイは不連続になります。
JavaScriptは、配列の長さ属性を設定することで配列を変更することもできます。長さの値が配列メンバーの数よりも少ない場合、JavaScriptは配列を傍受します。長さの値が配列メンバーの数よりも大きい場合、JavaScriptは配列を不連続にします。長さの値が読み取り専用の場合、配列内の新しいメンバーを直接定義する操作は失敗します。
コードコピーは次のとおりです。
console.log(o); // [2012,2014、2,3,5,7,11,13]
o.length = 2;
console.log(o); // [2012,2014]
o.length = 4;
console.log(o); // [2012,2014、未定義、未定義]
var a = [1,2,3];
object.defineProperty(a、 "length"、{writable:false});
a [3] = 4;
console.log(a); // [1,2,3]