JS中遍历普通数组和字典数组的区别

JavaScript016

JS中遍历普通数组和字典数组的区别,第1张

// 普通数组

var intArray = new Array()

intArray[0] = "第一个"

intArray[1] = "第二个"

for(var i = 0 i < intArray.lengthi++)

{

    alert(intArray[i])    // 第一个,第二个

}

// 拿到的是下标(像dictionary的key)

for(var key in intArray)

{

    alert(key)       // 0,1

} // 字典数组

var dicArray = new Array()

dicArray["f"] = "第一个"

dicArray["s"] = "第二个"

             

// 无法取到

for(var i = 0 i < dicArray.lengthi++)

{

    alert(dicArray[i])

}

             

// 拿到的是下标

for(var key in dicArray)

{

    alert(key)       // f,s

}

普通数组:

var ary = ['a','b',1,2,3,4]

下标就能访问到,历遍可以使用下标获取里面的值

字典数字:

// 相当于把这个数组附加某些属性,无法用下标访问,对象的访问方式才能获取定义的值。

// for无法使用下标访问,for in 可以

var ary=[]

ary['a']=1

ary['b']=2

ary['c']=3

首先说一句~你的数组有语法错误~

而在JS中json是字符串表现形式,你的B显然是个对象,跟json没啥关系的~

所以是在js对象(数组)和json字符串之间转换~

那你的A(js中实例使用Camel规则,所以要写成小写a)就应该写成:

var a = {

name: "XXXX", //属性也是Camel规则

year: 1990,

old: 21

}

然后就是转换问题了,使用JSON类:

var b = JSON.stringify(a)//注意,b是json字符串

如果找不到JSON对象说明你浏览器版本太老

就需要手动引用json类库

请自行百度"json2.js"进行下载并引用

希望对您有帮助~

By Billskate