<input type="radio" value="radio" id="radio"/>
<script>
function fn(){
thisaa = "obj1";
thisbb = "obj2";
}
var json = {"aa":"json1","bb":"json2"};
var obj = new fn();
var radio = documentgetElementById("radio");
consolelog("-------------json----------------");
for(var key in json){
consolelog(key+"--"+json[key]);
}
consolelog("-------------new obj----------------");
for(key in obj){
consolelog(key+"--"+obj[key]);
}
consolelog("-------------document----------------");
for(key in radio){
consolelog(key+"--"+radio[key]);
}
</script>
从上面例子中可以看出:
1、 for in 可以遍历自己定义的json对象 ,和自己new的函数对象。
2、for in 不能遍历页面节点对象,但是把radio换成遍历document不会报错。
3、不建议用for in来遍历节点对象,因为不是所有节点对象属性都支持in运算符的访问。
json是种常用数据传输格式,js怎么解析json格式的数据呢,请参阅下面的代码:
[html] view plain copy print
<html>
<head>
<script type="text/javascript">
var data = '{"return_code":0,"return_message":"success","data":{"data":[{"id":"1","question":"公主令牌在哪交?"},{"id":"2","question":"公主护使有什么用?"},{"id":"3","question":"角斗场在哪?"},{"id":"4","question":"北部断层在哪?"},{"id":"5","question":"欢乐令有什么用?"},{"id":"6","question":"令牌积分有什么用?"},{"id":"7","question":"南部断层在哪?"},{"id":"8","question":"大妖魔令牌交给谁?"},{"id":"9","question":"神工坊在哪?"},{"id":"10","question":"警戒妖珠有什么用?"}]}}';
function ShowData(){
var obj = eval("("+data+")");
alert("return_code:"+obj["return_code"]);
alert("return_message:"+obj["return_message"]);
alert("第一个问题id:" + obj["data"]["data"][0]["id"]);
alert("第一个内容id:" + obj["data"]["data"][0]["question"]);
}
</script>
</head>
<body onload="ShowData();">
{"return_code":0,"return_message":"success","data":{"data":[{"id":"1","question":"公主令牌在哪交?"},{"id":"2","question":"公主护使有什么用?"},{"id":"3","question":"角斗场在哪?"},{"id":"4","question":"北部断层在哪?"},{"id":"5","question":"欢乐令有什么用?"},{"id":"6","question":"令牌积分有什么用?"},{"id":"7","question":"南部断层在哪?"},{"id":"8","question":"大妖魔令牌交给谁?"},{"id":"9","question":"神工坊在哪?"},{"id":"10","question":"警戒妖珠有什么用?"}]}}
</body>
</html>
event是事件对象,比如你按了某个键(或者单击等,反正能触发事件的),那你在处理时候可能会需要一些信息,比如说是哪个元素被触发的,这个元素也就是你所问的eventsrcElement(事件的源对象),通过它可以得到事件的对象,如果你是按键事件如keyup,keydown,那么在eventkeyCode会得到这个键的ascii码,如果是鼠标事件,可能还会有当前鼠标的坐标等等,总之,这个对象里面包含了事件发生时的各种数据。
重写对象的toString方法,按照json数据的规则
然后前台string转json
控制台打印
这个方法不需要引入其他包
如果map的key属性过多,或者key是集合,可以在后台先转json,然后前台一样String转json,再遍历
需要引入包
前台
//js中创建对象有两种方法:
//1、对象字面量法
var o1={name:"aaa",age:17};
//2、构造函数法
var o2=new Object();
o2name="bbb";
o2age=20;
以上就是关于JS for in 循环中的key ,value 详解。全部的内容,包括:JS for in 循环中的key ,value 详解。、js一个对象数组,如何在不知道KEY的情况下取到值、如何在js中获取event对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)