JS for in 循环中的key ,value 详解。

JS for in 循环中的key ,value 详解。,第1张

<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对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9560922.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存