数组对象 Array的方法arr.join([separator])将所有元素连接成一个字符串。参数separator是一个可选的字符串,用作分隔符。//例1:var cnb = ["零","一","二","三","四","五","六","七","八","九","十"]document.writeln(cnb.join())// 输出:零,一,二,三,四,五,六,七,八,九,十document.writeln(cnb.join("|"))// 输出:零|一|二|三|四|五|六|七|八|九|十//例2:var cnb = [1,2,3]cnb[10] = "10"document.writeln(cnb.join())// 输出:1,2,3,,,,,,,,10document.writeln(cnb.join("|"))// 输出:1|2|3||||||||10//例3:var num = [],sum = 0for(var i=1i<=10i++){ num.push(i)sum += i}document.writeln(num.join("+") + "=" + sum)// 输出:1+2+3+4+5+6+7+8+9+10=55//==================================================================================================//String.split(delimiter,max_array_length)方法 与 Array.join([separator])方法执行相反的操作:var num = "1,2,3,4,5,6,7,8,9,10".split(",")document.writeln(num.join("-"))// 输出:1-2-3-4-5-6-7-8-9-10</script>举个简单例子,希望你能明白,
1、下面输出结果是"jim",而不是"tom",
是因为数组中保存的都是指向json对象a的地址,
dd[0],dd[1],dd[2],dd[3]对象指向的内存地址相同,
当修改其中一个dd[0]的属性值的时候,数组所有元素指向的对象属性值都改变了。
var
dd
=
[]var
a
=
{
"cname":
"tom"
}for
(var
i
=
0
i
<4
i++)
{
dd[i]
=a}dd[0].cname
=
"jim"alert(dd[2].cname)2、下面输出结果是0,而不是1,
是因为数组元素dd[0],dd[1],dd[2],dd[3]对应的内存地址都不同,互不干扰。
var
dd
=
[]var
a
=
0for
(var
i
=
0
i
<4
i++)
{
dd[i]
=a}dd[0]=1alert(dd[2])
希望对你有帮助!