gpt4 book ai didi

javascript - JavaScript 对象的属性

转载 作者:行者123 更新时间:2023-11-29 16:28:49 25 4
gpt4 key购买 nike

在我的 JavaScript 中,我使用对象作为关联数组。它始终拥有属性“主要”,并且可能还有其他。因此,当我创建它时,我可能会这样做:

var myobject     = new Object ();
myobject["main"] = somevalue;

稍后可能会添加其他属性。现在,在某个时刻我需要知道myobject 仅具有一个属性还是多个属性,然后取不同的操作取决于(我仅指我创建的属性)。

到目前为止,我发现要做的就是:

flag = false;

for (i in myobject)
{
if (i=="main") continue;
flag = true;
break;
}

然后在标志上分支。或者:

for (i in myobject)
{
if (i=="main") continue;
do_some_actions ();
break;
}

这些方法有效,但我觉得我忽略了一些东西。是有更好的方法吗?

最佳答案

我可能会这样做

function hasAsOnlyProperty( obj, prop )
{
for ( var p in obj )
{
if ( obj.hasOwnProperty( p ) && p != prop )
{
return false;
}
}
return true;
}

var myobject= new Object();
myobject.main = 'test';

// console requires Firebug
console.log( hasAsOnlyProperty( myobject, 'main' ) ); // true

// set another property to force false
myobject.other = 'test';

console.log( hasAsOnlyProperty( myobject, 'main' ) ); // false

关于javascript - JavaScript 对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2759610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com