js如何获取object类型里的键值
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);
相关推荐
-
JS获取父节点方法
如何获取要更新的元素,是首先要解决的问题.令人欣慰的是,使用JavaScript获取节点的方法有很多种,这里简单做一下总结(以下方法在IE7和Firefox2.0.0.11测试通过): 1. 通过顶层document节点获取: (1) document.getElementById(elementId):该方法通过节点的ID,可以准确获得需要的元素,是比较简单快捷的方法.如果页面上含有多个相同id的节点,那么只返回第一个节点. 如今,已
-
Javascript获取background属性中url的值
前言 最近在做项目的时候遇到一个问题,需要获取一个动态预览的图片的地址,这其实不是什么问题,主要是该图片的路径是写在css的background-img属性中的,于是决定要用js获取它的url中的内容,下面给大家分享解决的方法,有需要的朋友们下面来看看. var avatar = $("#image-preview").css("backgroundImage"); alert(avatar); 获取的是包含url("xxx.jpg")形式的值,
-
通过js获取div的background-image属性
之前没有注意过div的background-image这个属性,只是设置它的url,今天遇到一个问题特此做一下记录. 复制代码 代码如下: <div id="img_2" style="width:133px;height:95px; cursor:pointer; background-image: url('Chrysanthemum.jpg');" onclick="tempClick()"></div> 在js中想
-
js获取和设置属性的方法
复制代码 代码如下: function square(num){ var total = num*num;//局部变量 return total;}var total = 50;//全局变量var number = square(20);alert(total);//结果为50 function square(num){ total = num*num;//全局变量 return total;}var total = 50;//全局变量var number = squar
-
js获取div高度的代码
<style type="text/css"> <!-- #top { color: #FFFFFF; background-color: #FF0000; text-align: left; text-indent: 24px; width: 780px; line-height: 24px; font-size: 12px; padding-right: 10px; padding-left:
-
js 获取浏览器高度和宽度值(多浏览器)
IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中: document.body.clientWidth ==> BODY对象宽度 document.
-
js获取url参数值的两种方式
方法一:正则分析法 复制代码 代码如下: function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return n
-
JS backgroundImage控制
复制代码 代码如下: function changeBgImage(obj){ obj.style.cssText="background:url('2.gif') no-repeat 2 3"; }
-
JavaScript 获取当前时间戳的代码
JavaScript 获取当前时间戳: 第一种方法: 复制代码 代码如下: var timestamp = Date.parse(new Date()); 结果:1280977330000 第二种方法: 复制代码 代码如下: var timestamp = (new Date()).valueOf(); 结果:1280977330748 以上代码将获取从 1970年1月1日午夜开始的毫秒数.二者的区别是,第一种方法的毫秒位上为全零,即只是精确到秒的毫秒数 如题所示,返回unix时间戳所对应的具体
-
android客户端从服务器端获取json数据并解析的实现代码
首先客户端从服务器端获取json数据 1.利用HttpUrlConnection 复制代码 代码如下: /** * 从指定的URL中获取数组 * @param urlPath * @return * @throws Exception */ public static String readParse(String urlPath) throws Exception { ByteArrayOutputSt
随机推荐
- Angular.js中控制器之间的传值详解
- 怎么通过onclick事件获取js函数返回值(代码少)
- JS实现图片放大缩小的方法
- 在Vista中使用兼容模式运行应用程序的方法
- 批处理中直接执行vbs的方法
- java调用oracle分页存储过程示例
- JavaScript 选中文字并响应获取的实现代码
- 详细说明asp.net中datareader 和 dataset 的区别
- Python函数式编程指南(二):从函数开始
- Phantomjs抓取渲染JS后的网页(Python代码)
- 浅谈C#中HttpWebRequest与HttpWebResponse的使用方法
- Android编程获取手机后台运行服务的方法
- AS3.0实例学习 熟悉xml的运用
- js随机密码产生函数
- C# 中的??操作符浅谈
- jQuery定义背景动态切换效果的方法
- jQuery源码解读之extend()与工具方法、实例方法详解
- javascript数组去掉重复
- js实现文本框支持加减运算的方法
- Java2 JDK安装和配置教程
