是否可以(并且正确)调用返回数组的函数并直接使用索引键?

时间:2013-06-03 16:54:43

标签: javascript

是否可以(并且是有效的代码)?:

var x = function(){ return [0, 1, 2, 3];}
console.log(x()[0]);

它可以用grunt编译好..它适用于Chrome ..但是其他浏览器还可以吗?

3 个答案:

答案 0 :(得分:3)

是的,这是可能的,完全正常。

可以注意到,你的大部分数组在这里都没用。

答案 1 :(得分:2)

没有理由为什么这对任何浏览器都会失败。你的函数返回一个数组,因此没有理由将它分配给变量,而不是直接使用它 - 就像你的代码样本一样。

var x = function(){ return [0, 1, 2, 3];}
console.log(x()[0]);

在功能上等同于

var x = function(){ return [0, 1, 2, 3];}
var arr = x();
console.log(arr[0]);

答案 2 :(得分:1)

也可以这样做

console.log((function(){return [0, 1, 2, 3];})()[0])

或者

console.log((function(){return [0, 1, 2, 3][0];})())