我们常说JavaScript原生支持json,因为我们可以认为json就是对JavaScript的Object对象的灵活应用。
通常我们使用json的方式,主要用作前后台数据交换的格式:
而在代码逻辑中更多的是用关联数组的方式。但即使是这样我们也很少使用对象类型作为键值对的键名。
var a= {}, b= [];
a[b] = new Date(); //通过a[b]可以取得时间值。
键名的类型可以是对象,多么美好的一件事啊!
不过有一个问题。如果你想这么用,需要有一个条件:数据必须是动态添加的。(目前在同学这,没有条件测试其他的浏览器,目前测试了IE8以及搜狗浏览器的IE内核和weikit内核)
测试代码如下:
复制代码 代码如下:
var d = document.getElementById("hello"), obj = [1,2,3], a = {obj:"test"};
a[d] = "DOMElement";
alert(a[obj]); //undefined
alert(a[d]); //DOMElement
a[obj] = "Array Object";
alert(a[obj]); //Array Object
对象,索引,关联数组
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?