私の頭の中では、配列にKey-Valueをプッシュしたいと思います。
たとえば、PHPでは、これは次のように実行されます。
$err = array();
function check($k,$v) {
$err[$k] = $v;
}
これはJavaScript/jQueryでどのように正確に行われますか?
私の頭の中では、配列にKey-Valueをプッシュしたいと思います。
たとえば、PHPでは、これは次のように実行されます。
$err = array();
function check($k,$v) {
$err[$k] = $v;
}
これはJavaScript/jQueryでどのように正確に行われますか?
配列ではなく、オブジェクトでのJavascriptキー/値ペアのサポート
要素の挿入:
var arr= [1,2,3],
result = {};
for(var key in arr) {
result[key] = arr[key]; // in this case key will be 0,1,2 i.e index of array element
}
キーが存在することを確認します。
function checking(k, v) {
if(result.k != null || result.k != undefined) {
// do something
}
}
あなたの機能によると:
var err = {}; // not array, should be object
function check(k,v) {
err[k] = v; // or err.k = v;
}
挿入の詳細:
var x = [];
x.some = 'some'; // OK; arrays are objects
x['some'] = 'some'; // exactly the same
値を取得:
x.home; // give 'some'
x['home']; // give 'some'
カウントの長さ:
配列の長さを取得する場合は、を使用する必要があります.length
。
例えば:
x.length; // will return 1
また、オブジェクトの長さを数えたい場合は、次のようにします。
var obj = {a: 'XYZ', b: 'PQR'};
Object.keys(obj).length; // will return 2
アイテムを削除するには:
オブジェクトからアイテムを削除する場合:
delete obj[key];
配列からアイテムを削除するには:
delete arr[index]; // index is position of the element within array
配列要素を削除することもできます
arr.splice(0,2); // splice(index, howmany, [item1, item2, ...., itemx])
// in this example from start 2 items will delete
オブジェクトを使用します。そして、ほとんど同じ方法でそれを行います。
var $err = {};
function check($k, $v) {
$err[$k] = $v;
}
確かに、それは配列ではありません。
実際にはJavascript配列でこれを行うことができ、インタプリタがそれを許可することに注意してください。
var $err = []; // an array
function check($k, $v) {
$err[$k] = $v;
}
ただし、実際には配列にプッシュするのではなく、配列オブジェクトを拡張します。あなたはこれでこれをチェックすることができます:
var foo = [];
foo['hello'] = 'world';
console.log(foo); // []
console.log(foo['hello']); // 'world'
console.log(foo.hello); // 'world'
console.log(foo.length); // 0
...この落とし穴に気をつけてください。:D