javascript-objects - JavaScript forin - JavaScript オブジェクトの長さ

javascript オブジェクト名 取得 / javascript

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

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

Peter Mortensen



Answer #1

プロトタイプや他のコードをいじらないためには、自分でオブジェクトを作って拡張すればいい。

function Hash(){
    var length=0;
    this.add = function(key, val){
         if(this[key] == undefined)
         {
           length++;
         }
         this[key]=val;
    }; 
    this.length = function(){
        return length;
    };
}

myArray = new Hash();
myArray.add("lastname", "Simpson");
myArray.add("age", 21);
alert(myArray.length()); //アラート2