如何列出JavaScript对象的属性?
本文翻译自:How to list the properties of a JavaScript object?
Say I create an object thus: 假设我创建了一个对象:
var myObject ={"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"};
What is the best way to retrieve a list of the property names? 检索属性名称列表的最佳方法是什么? ie I would like to end up with some variable 'keys' such that: 即我想最终得到一些变量'键',这样:
keys == ["ircEvent", "method", "regex"]
#1楼
参考:https://stackoom.com/question/s76/如何列出JavaScript对象的属性
#2楼
This will work in most browsers, even in IE8 , and no libraries of any sort are required. 这适用于大多数浏览器,即使在IE8中也是如此,并且不需要任何类型的库。 var i is your key. var i是你的关键。
var myJSONObject = {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"};
var keys=[];
for (var i in myJSONObject ) { keys.push(i); }
alert(keys);
#3楼
在支持js 1.8的浏览器下:
[i for(i in obj)]
#4楼
Could do it with jQuery as follows: 可以用jQuery做到如下:
var objectKeys = $.map(object, function(value, key) {return key;
});
#5楼
Mozilla has full implementation details on how to do it in a browser where it isn't supported, if that helps: Mozilla有关于如何在不支持的浏览器中执行此操作的完整实现详细信息 ,如果有帮助:
if (!Object.keys) {Object.keys = (function () {var hasOwnProperty = Object.prototype.hasOwnProperty,hasDontEnumBug = !({toString: null}).propertyIsEnumerable('toString'),dontEnums = ['toString','toLocaleString','valueOf','hasOwnProperty','isPrototypeOf','propertyIsEnumerable','constructor'],dontEnumsLength = dontEnums.length;return function (obj) {if (typeof obj !== 'object' && typeof obj !== 'function' || obj === null) throw new TypeError('Object.keys called on non-object');var result = [];for (var prop in obj) {if (hasOwnProperty.call(obj, prop)) result.push(prop);}if (hasDontEnumBug) {for (var i=0; i < dontEnumsLength; i++) {if (hasOwnProperty.call(obj, dontEnums[i])) result.push(dontEnums[i]);}}return result;};})();
}
You could include it however you'd like, but possibly in some kind of extensions.js
file at the top of your script stack. 您可以根据需要包含它,但可能包含在脚本堆栈顶部的某种extensions.js
文件中。
#6楼
I'm a huge fan of the dump function. 我是转储功能的忠实粉丝。
http://ajaxian.com/archives/javascript-variable-dump-in-coldfusion http://ajaxian.com/archives/javascript-variable-dump-in-coldfusion
如何列出JavaScript对象的属性?相关推荐
- 如何枚举JavaScript对象的属性? [重复]
本文翻译自:How do I enumerate the properties of a JavaScript object? [duplicate] This question already ha ...
- 如何动态合并两个JavaScript对象的属性?
我需要能够在运行时合并两个(非常简单的)JavaScript对象. 例如,我想: var obj1 = { food: 'pizza', car: 'ford' } var obj2 = { anim ...
- javaScript 对象添加属性和创建js对象的方式(以及理解:“无法给构造函数添加新的属性“)
1.javaScript 对象想要添加属性,非常简单 (1)直接添加,使用语法:objectName.propertyName 添加属性. 举例: var person = new Object(); ...
- 了解JavaScript 对象的属性操作
提起操作, 很多人都会想到我们学习过程中最经常做的操作, 就是对数据库进行增, 删, 改, 查, 既然提到这个, 那么对于对象的属性操作也不例外, 基本上可以说也是这几个操作. JS中对象的属性标签 ...
- javaScript 对象访问属性的另一种方式
var zhang={name:"zb",secondName:"xiaodaidai"}console.log(zhang["name"] ...
- JavaScript创建对象的两种方法和遍历对象的属性
创建新对象有两种不同的方法: 定义并创建对象的实例 使用函数来定义对象,然后创建新的对象实例 1.定义并创建对象的实例 var person=new Object(); person.firstnam ...
- JavaScript对象属性及方法
JavaScript对象属性及方法 1.对象属性 JavaScript对象时属性变量的容器,以键值对name:value的形式存在,访问方式为 name.value name[value] 2.对象方 ...
- JavaScript对象、基本类型和字面值之间的区别
问题 人们经常会遇到诸如对象(object),基本类型(primitive)和字面值(literal)这样的术语,这三者之间有何区别.我们又如何分辨他们呢? 解决方案 一个JavaScript字面值表 ...
- 对象的属性名与属性值
注意共有5个步骤,按顺序操作下去 1.在对象中保存的值称为属性,对象的属性名不强制要求遵守标识符规则,什么名称都可以,我对象属性的语法:1对象.属性名,注意:如果对象中没有的属性,不报错而是返回und ...
最新文章
- 读取手机联系人,并用listview显示
- StringBuilder类与String类的区别
- 《Windows 8 权威指南》——1.5 版本对比
- 【MFC】MFC开发之前言
- 【转载】2010年最全最新令人无语语录
- 吴恩达入驻知乎首答:如何系统学习机器学习?
- SpringBoot 2.x yml 文件中自定义参数解析对象
- windows7计算机用户账户,win7系统删除用户账户的方法(图文)
- 12月第三周各国域名总量榜:中国729万居全球第二
- 系统剪切板的使用UIPasteboard
- CSS实现左侧固定大小,右侧自适应的布局
- 刚接触新工作的程序员:不会打开终端窗口
- java是学习方程!
- 推荐几本微积分入门书籍
- css flex 布局 space-around 和 space-evenly 之间的区别css flex布局)
- xxm php,XXM个人知识管理工具 v6.0.5
- [MacOSX]_[LaunchDaemons]_[Mac OS X 安装Tomcat开机启动服务的方法之一]
- 流程图 选择结构 (一)
- maven打包失败解决方案
- VSCode 的 Live Share 功能终于来了
热门文章
- pthread_cond_wait()加一个while为什么的解释
- 总结一下对buffer的学习体会
- 算法------买卖股票的最佳时机
- 【剑指offer-Java版】01为了准备面试也为了提升编程技巧开始刷宝典了
- C#ReadLine()和ReadKey()区别
- flex 单独一行_Flex网页布局一CSS弹性伸缩盒子语法教程
- ConcurrentHashMap源码分析(2)——JDK1.8的实现
- 测试私有方法 重构_通过测试学Go:指针和错误
- P4318 完全平方数
- 20171218-编程语言的介绍