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 相关文章推荐
javascript 数字格式化输出的实现代码
Dec 10 Javascript
jquery中change()用法实例分析
Feb 06 Javascript
通过实例理解javascript中没有函数重载的概念
Jun 03 Javascript
简介AngularJS的视图功能应用
Jun 17 Javascript
Underscore源码分析
Dec 30 Javascript
jquery中取消和绑定hover事件的实现代码
Jun 02 Javascript
微信小程序 数据访问实例详解
Oct 08 Javascript
JS实现页面打印功能
Mar 16 Javascript
JQuery Ajax跨域调用和非跨域调用问题实例分析
Apr 16 jQuery
vue-cli webpack配置文件分析
May 20 Javascript
通过GASP让vue实现动态效果实例代码详解
Nov 24 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
Nov 10 Javascript
纯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实现自动识别Restful API的返回内容类型
2015/02/07 PHP
php正则表达式获取内容所有链接
2015/07/24 PHP
PHP浮点数的一个常见问题
2016/03/10 PHP
PhpStorm terminal无法输入命令的解决方法
2016/10/09 PHP
PHP实现负载均衡下的session共用功能
2018/04/17 PHP
JavaScript语句可以不以;结尾的烦恼
2007/03/08 Javascript
Jquery获取和修改img的src值的方法
2014/02/17 Javascript
jquery点击缩略图切换视频播放特效代码分享
2015/09/15 Javascript
javascript Slip.js实现整屏滑动的手机网页
2015/11/25 Javascript
JavaScript学习笔记之数组求和方法
2016/03/23 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
Angular.JS中指令ng-if的注意事项小结
2017/06/21 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
element-ui 上传图片后清空图片显示的实例
2018/09/04 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
javascript实现图片轮播代码
2019/07/09 Javascript
你不可不知的Vue.js列表渲染详解
2019/10/01 Javascript
vue-element-admin 菜单标签失效的解决方式
2019/11/12 Javascript
[02:31]DOTA2帕克 英雄基础教程
2013/11/26 DOTA
Flask框架学习笔记(一)安装篇(windows安装与centos安装)
2014/06/25 Python
星球大战与Python之间的那些事
2016/01/07 Python
Django 自定义分页器的实现代码
2019/11/24 Python
Python操作注册表详细步骤介绍
2020/02/05 Python
Python常用GUI框架原理解析汇总
2020/12/07 Python
CSS3弹性布局内容对齐(justify-content)属性使用详解
2017/07/31 HTML / CSS
Expedia印度尼西亚站:预订酒店、廉价航班和度假套餐
2018/01/31 全球购物
移动通信专业自荐信范文
2013/11/12 职场文书
幼儿园毕业家长感言
2014/02/10 职场文书
收银出纳员岗位职责
2014/02/23 职场文书
开会通知短信大全
2015/04/20 职场文书
工会经费申请报告
2015/05/15 职场文书
导游词之青岛太清宫
2019/12/13 职场文书
php 解析非标准json、非规范json
2021/04/01 PHP
详解thinkphp的Auth类认证
2021/05/28 PHP
详解Mysq MVCC多版本的并发控制
2022/04/29 MySQL