扫码关注官方订阅号
比如 opt 是一个对象,然后设置属性:
var opt = { set1:"1", set2:"2", set3:"2" }
可以直接将opt直接取到索引 还是将里面的属性取出来为数组取。
人生最曼妙的风景,竟是内心的淡定与从容!
直接读到 key 无法用原生 JS 实现,比较常规的做法是用 for..in 循环:
var opts = { set1: "1", set2: "2", set3: "3" }, keys = []; for (key in opts) { keys.push(key); } keys[0]; // "set1" keys[1]; // "set2" keys[2]; // "set3"
但是这里面有坑,因为很多时候你不知道 key 是目标对象自己的,还是通过原型继承来的,所以一般都要做一层判断,只要目标对象自己的:
for (key in opts) { if (opts.hasOwnProperty(key) { keys.push(key); } }
好消息是 ES5 增加了 Object.keys 方法,直接获取对象自己的所有键,返回数组:
Object.keys
var keys = Object.keys(opts);
再进一步的判断比如 可枚举 之类的,你没问,我就不啰嗦了,欢迎其他人补充。
没太明白题主的意思。
是希望获得 set1 的值吗? 直接 opt.set1 就可以了。或者我误会了题主的意思。 如果这个索引指的是 key 值的话,遍历对象吧。
set1
opt.set1
key
var index = Array(); for(var i in opt) { if(typeof(i) != 'function') { index.push(i); } }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
直接读到 key 无法用原生 JS 实现,比较常规的做法是用 for..in 循环:
但是这里面有坑,因为很多时候你不知道 key 是目标对象自己的,还是通过原型继承来的,所以一般都要做一层判断,只要目标对象自己的:
好消息是 ES5 增加了
Object.keys方法,直接获取对象自己的所有键,返回数组:再进一步的判断比如 可枚举 之类的,你没问,我就不啰嗦了,欢迎其他人补充。
没太明白题主的意思。
是希望获得
set1的值吗? 直接opt.set1就可以了。或者我误会了题主的意思。如果这个索引指的是
key值的话,遍历对象吧。