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

如何列出JavaScript对象的属性?

李嘉胜
2023-03-14
问题内容

说我这样创建一个对象:

var myObject =
        {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"};

检索属性名称列表的最佳方法是什么?即我想以一些变量“键”结束:

keys == ["ircEvent", "method", "regex"]

问题答案:

在现代浏览器(IE9 +,FF4 +,Chrome5 +,Opera12 +,Safari5+)中,您可以使用内置的Object.keys方法:

var keys = Object.keys(myObject);

上面有完整的polyfill,但简化的版本是:

var getKeys = function(obj){
   var keys = [];
   for(var key in obj){
      keys.push(key);
   }
   return keys;
}

或者替换为vargetKeysObject.prototype.keys以允许您调用.keys()任何对象。扩展原型会产生一些副作用,我不建议您这样做。



 类似资料:
  • 问题内容: 如何枚举JavaScript对象的属性? 我实际上想列出所有已定义的变量及其值,但是我了解到定义一个变量实际上会创建window对象的属性。 问题答案: 很简单: 现在,您将无法以这种方式获取私有变量,因为它们不可用。 编辑:是正确的,除非您使用该方法,否则您将获得继承的属性- 但是,我不知道为什么任何熟悉面向对象编程的人都期望得到更少的东西!通常,提起此问题的人会受到道格拉斯·克罗克

  • 问题内容: 说我有一个对象: 我想用其属性的子集创建一个新对象。 我该如何实现? 问题答案: 使用对象分解和属性速记 来自Philipp Kewisch: 这实际上只是一个即时调用的匿名函数。所有这些都可以在MDN 的“ 解构分配”页面上找到。这是扩展形式

  • 本文向大家介绍如何获取JavaScript对象属性的子集?,包括了如何获取JavaScript对象属性的子集?的使用技巧和注意事项,需要的朋友参考一下 假设以下是我们的对象- 以下是仅获取子集的代码- 示例 要运行以上程序,您需要使用以下命令- 在这里,我的文件名为demo120.js。 输出结果 这将产生以下输出-

  • 说我有对象: 我想用它的属性的子集来制作一个新的对象。 我怎样才能做到这一点?

  • 问题内容: 说我创建一个对象,如下所示: 删除该属性以使其最终成为new 的最佳方法是什么? 问题答案: 像这样: 演示版

  • 问题内容: 我正在寻找“添加”多个JavaScript对象(关联数组)的最佳方法。 例如,给定: 什么是最好的计算方式: 问题答案: 引入ECMAscript 6是为了用Javascript本身实现此目的。 所述 Object.assign() 方法被用于所有可枚举自己的属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 在许多现代浏览器中都受支持,但并非所有浏览器都支持。使用Babel