js获取object类型所有的键值对

万物皆对象,而对象完全可以用键值对来表示,所以,在js中,也是通过键值对来表示对象的,在开发中,我在修改的时候,知道属性值可以直接用点.符号来获取值,但是写common.js的时候,发现这个属性名称是变化的,也就是这样就不能通过点来动态获取了,那么这个怎么获取呢?

先看下面

var obj = {"name1":"张三","name2":"李四"};
var key = "name1";
var value = obj.key;//得到了"undefined"
value = obj.name1;//得到了"张三"
其实我是想动态给key赋值,然后得到key为多少所对就的值。但这种做法行不通,obj.key会去找obj下key为"key"所对应的值,结果当然是找不到喽。
那么既然是键值对,那么是不是可以通过object[key]来获取这个value呢?然后我就尝试着用
obj[key];//这样获取的就是张三 
然后呢,经过查询,还有另外一种方法来说去属性值,就是
eval("obj."+key)。
综上,一共有两种方法来获取属性值
一、var key = "name1";var value = obj[key];
二、var key = "name1";var value = eval("obj."+key); 
 

转载于:https://www.cnblogs.com/ningheshutong/p/6396543.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值