首页 新闻 会员 周边

一行简单的代码问题 js

0
悬赏园豆:5 [已关闭问题] 关闭于 2011-03-30 08:42
function test()
{
return ["zxh","october"];
}
var [name,month]=test();
[name,month]
//sdsd,asdsd
[name,month].name;//undefined

 

[name,month]赋值为test(),着是怎么赋值的?为什么在chrom里面报错,而在火狐里面没有错误?我开始只是随便写写的,在《精通javascript》里面看到的,不知道这个是怎么赋值的。原理是什么呢?我开始以为name=>"zxh" month=>"october"呢 可是后来测试也得不到值 好像是把[name,month]当成一个整体了。怎么会出现这样的情况呢?为什么chrom不支持呢?

  谁知道呢?给我解释一下吧,谢谢啦!

晓O(∩_∩)O~的主页 晓O(∩_∩)O~ | 初学一级 | 园豆:200
提问于:2011-03-19 11:59
< >
分享
所有回答(2)
0

var 变量名 = 值;

变量名由以下字符组成:1-9a-zA-Z_$,且第一个字符不能是数字

你这写法真神仙……

Gray Zhang | 园豆:17610 (专家六级) | 2011-03-19 23:01
我也知道变量名的命名规则啊,可是var [name,month]=test();这种写法真的可以啊,我也不知道为什么……
支持(0) 反对(0) 晓O(∩_∩)O~ | 园豆:200 (初学一级) | 2011-03-20 09:18
0

说明了FF跟chrome的js引擎不一样

码尔代夫iimax | 园豆:3138 (老鸟四级) | 2011-03-21 10:18
谢谢
支持(0) 反对(0) 晓O(∩_∩)O~ | 园豆:200 (初学一级) | 2011-03-22 08:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册