JavaScript array.length 0 になる - JavaScript オブジェクトの長さ

JavaScript 配列 .length 取得 できない / javascript / javascript-objects

私はJavaScriptのオブジェクトを持っています。このオブジェクトの長さを取得するための組み込みの方法、あるいは受け入れられているベストプラクティスの方法はありますか?

const myObject = new Object();
myObject["firstname"] = "Gareth";
myObject["lastname"] = "Simpson";
myObject["age"] = 21;

Peter Mortensen



Answer #1

更新Underscore.jsを使用している場合(推奨、軽量です!)、次のことができます。

_.size({one : 1, two : 2, three : 3});
=> 3

そうでない場合で、何らかの理由でObjectプロパティをいじりたくなく、すでにjQueryを使用している場合は、プラグインにも同様にアクセスできます。

$.assocArraySize = function(obj) {
    // http://stackoverflow.com/a/6700/11236
    var size = 0, key;
    for (key in obj) {
        if (obj.hasOwnProperty(key)) size++;
    }
    return size;
};