当前位置: 首页 > 面试题库 >

JavaScript获取对象键名

羊舌志
2023-03-14
问题内容

我如何获得后续的密钥名称?例如,我要“ button1”和“ button2”?

var buttons = {
    button1: {
        text: 'Close',
        onclick: function(){

        }
    },
    button2: {
        text: 'Close2',
        onclick: function(){

        }
    }
}

var i;
for(i in buttons){
    if(buttons.hasOwnProperty(i)){
        alert(buttons[i].text);
    }
}

我尝试使用,.push()尽管这没有用。


问题答案:

如果您稍微修改一下措辞,则可能会更好地理解:

var buttons = {
  foo: 'bar',
  fiz: 'buz'
};

for ( var property in buttons ) {
  console.log( property ); // Outputs: foo, fiz or fiz, foo
}

请注意,您要遍历对象的属性,并property在每个后续周期中使用对每个对象的引用。

MSDN说到for ( variable in [object | array ])以下内容:

在循环的每次迭代之前,都会为变量分配对象的下一个属性名称或数组的下一个元素索引。然后,您可以在循环内的任何语句中使用它来引用对象的属性或数组的元素。

还请注意,与数组的索引顺序不同,对象的属性顺序不是恒定的,并且可以更改。可能会派上用场。



 类似资料:
  • 问题内容: 我有一个JavaScript对象,例如 如何获取此对象中键的长度和列表? 问题答案: var obj = {

  • 问题内容: 如果我有一个JS对象,例如: 如果我知道键具有基本的键/值结构,但不知道键的名称,那么最简单的方法是什么???我希望有更好的… 问题答案: 如果要获取所有密钥,则可以使用ECMAScript5。只有较新的浏览器才支持此功能,但MDC文档提供了另一种实现方式(也使用btw): 当然,如果您想要键和值,那么这是唯一合理的解决方案。

  • 问题内容: 我有以下对象: 我想检索以下结果: abc [1] abc [2] abc [3] abc [4] abc.count abc.counter.count abc [5] abc [5] .test abc [5] .tester abc [5] .tester.name 可以在插件的帮助下使用nodejs吗? 问题答案: 您可以通过递归遍历对象来做到这一点: 在问题中的对象上运行将返

  • 问题内容: 我有以下(嵌套)对象: 接下来,我要做的就是像这样引用子对象: 现在,我想做的就是从变量中获取对对象的引用。就像是: 这可能吗? 问题答案: 否。无法知道它来自哪个对象。 而这两个只是有同一个对象的引用。 您也可以这样做: 您现在有三个引用,和,同一个对象。它们都不是特别的。

  • 问题内容: 我想以jQuery或纯JavaScript的形式获取JavaScript对象的键作为数组。 有没有比这更详细的方法? 问题答案: 用途: 这是ES5的功能。这意味着它可以在所有现代浏览器中使用,但不能在旧版浏览器中使用。 ES5-shim有一个实现可以偷

  • 问题内容: 我是JSON的新手。因此,如果这是一个非常基本的疑问,请不要责骂我。我有一个JSON对象参考,我想获取Key(对象只有一个“键值对”)。如何在Java中获得它? 问题答案: 您可以用来获取所有密钥。然后,您可以遍历密钥以从中获得第一个密钥,例如: