js如何获取object类型里的键值


Posted in Javascript onFebruary 18, 2014

最近遇到一个问题:

var obj = {"name1":"张三","name2":"李四"}; 
var key = "name1"; 
var value = obj.key;//得到了"undefined" 
value = obj.name1;//得到了"张三"

其实我是想动态给key赋值,然后得到key为多少所对就的值。但这种做法行不通,obj.key会去找obj下key为"key"所对应的值,结果当然是找不到喽。
于是,我想到了js中遍历对象属性的方法:
function printObject(obj){ 
//obj = {"cid":"C0","ctext":"区县"}; 
var temp = ""; 
for(var i in obj){//用javascript的for/in循环遍历对象的属性 
temp += i+":"+obj[i]+"\n"; 
} 
alert(temp);//结果:cid:C0 \n ctext:区县 
}

这样,就可以清楚的知道js中一个对象的key和value分别是什么了。
回到刚才的问题,怎么动态给key赋值,然后以obj.key的方式得到对应的value呢?
其实以上printObject中有提示,那就是用obj[key]的方法,key可以是动态的,这样就解决了我上面提出的问题了。
最后说一下,还有一个方法也可以,那就是:eval("obj."+key)。

总结:

js中想根据动态key得到某对象中相对应的value的方法有二:
一、var key = "name1";var value = obj[key];
二、var key = "name1";var value = eval("obj."+key);

Javascript 相关文章推荐
JS 控制CSS样式表
Aug 20 Javascript
理解JavaScript中的对象 推荐
Jan 09 Javascript
node.js中的path.isAbsolute方法使用说明
Dec 08 Javascript
Jquery中offset()和position()的区别分析
Feb 05 Javascript
js仿土豆网带缩略图的焦点图片切换效果实现方法
Feb 23 Javascript
jQuery()方法的第二个参数详解
Apr 29 Javascript
javascript事件委托的用法及其好处简析
Apr 04 Javascript
详解JS几种变量交换方式以及性能分析对比
Nov 25 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
Dec 28 Javascript
原生JS中slice()方法和splice()区别
Mar 06 Javascript
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
Aug 09 Javascript
基于 jQuery 实现键盘事件监听控件
Apr 04 jQuery
纯js写的分页表格数据为json串
Feb 18 #Javascript
倒记时60刷新网页的js代码
Feb 18 #Javascript
JS替换文本域内的回车示例
Feb 18 #Javascript
javascript得到当前页的来路即前一页地址的方法
Feb 18 #Javascript
通过正则表达式实现表单验证是否为中文
Feb 18 #Javascript
如何将网页表格内容导入excel
Feb 18 #Javascript
js charAt的使用示例
Feb 18 #Javascript
You might like
php实现按文件名搜索文件的远程文件查找器
2014/05/10 PHP
解析WordPress中的post_class与get_post_class函数
2016/01/04 PHP
CodeIgniter常用知识点小结
2016/05/26 PHP
PHP开发实现快递查询功能详解
2019/04/08 PHP
超级兔子让浮动层消失的前因后果
2007/03/09 Javascript
jquery中的sortable排序之后的保存状态的解决方法
2010/01/28 Javascript
JavaScript DOM学习第八章 表单错误提示
2010/02/19 Javascript
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
2010/05/07 Javascript
javascript学习笔记(三)显示当时时间的代码
2011/04/08 Javascript
jquery 延迟执行实例介绍
2013/08/20 Javascript
jQuery实现设置、移除文本框默认值功能
2015/01/13 Javascript
JQuery包裹DOM节点的方法
2015/06/11 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
浅谈angularjs中响应回车事件
2017/04/24 Javascript
web前端vue实现插值文本和输出原始html
2018/01/19 Javascript
vue-router beforeEach跳转路由验证用户登录状态
2018/12/26 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
2020/02/27 Javascript
vue自定义标签和单页面多路由的实现代码
2020/05/03 Javascript
Jquery高级应用Deferred对象原理及使用实例
2020/05/28 jQuery
vue 使用vant插件做tabs切换和无限加载功能的实现
2020/11/04 Javascript
[51:10]VP vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python中正则表达式的详细教程
2015/04/30 Python
Python抽象类的新写法
2015/06/18 Python
非递归的输出1-N的全排列实例(推荐)
2017/04/11 Python
Python异常处理操作实例详解
2018/08/28 Python
Python WEB应用部署的实现方法
2019/01/02 Python
python读写Excel表格的实例代码(简单实用)
2019/12/19 Python
python3.7+selenium模拟淘宝登录功能的实现
2020/05/26 Python
承认错误的检讨书
2014/01/30 职场文书
高中军训感想300字
2014/03/04 职场文书
生物学专业求职信
2014/07/23 职场文书
市级三好学生事迹材料
2014/08/27 职场文书
安全第一课观后感
2015/06/18 职场文书
教师节晚会主持词
2015/06/30 职场文书
2016年度基层党建工作公开承诺书
2016/03/25 职场文书
python中tkinter复选框使用操作
2021/11/11 Python