将数值分配给数组意外标记“[”

时间:2018-05-16 20:20:47

标签: javascript arrays scope

是的,我真的很讨厌这个,因为我确信我在搜索的某个地方错过了它。

即时学习JS(纯)并且我知道几种语言,但是虽然这种分配在我使用的许多语言中是合法的,但由于某种原因,它在js中存在问题。

    var gear = []; // global assignment

    gear[0]=200; // this is an error here

    function bla(){

        gear[0] = 200;// putting in a function is also an error
    }

// the above causes an unexpected token "[" error. Even BASIC allows this.

所以做一些搜索我发现分配的位置是错误的,所以我尝试了全局,我在函数内部尝试过它,它总是会出现错误。

所以我有问题(就纯js而言)你不能给数组赋一个numerica值吗? 我在哪里可以放这个? 如果我分配这个错误(我确定我是)我怎么能让索引0等于某个值? 我应该使用括号吗? 我的整个程序工作得很好,直到我去清理编码添加一些数组。而现在它仍然坚持这个标记。 (我可以把它写成控制台AP,但更喜欢网络基础)

谢谢你们!

1 个答案:

答案 0 :(得分:0)

好的,我做了一些检查..没有我质疑的是答案。 显然,当我初始化变量时,我忘记了我这样做了,所以当我去为它赋值时,就会出现错误:

示例:

var gear = []; // setup the array this is fine
gear[0] = 200; // this IS fine as well, but....

var gear[0] = 200;// is what I found further in the code, which in turn triggered the error. 

通常这很好,如果原来的

var gear = [];

不存在。那令人困惑。 Js似乎让你只是随机地“改变”代码中的东西(编码标准不能承受)。

我更熟悉php,这是一种相当松散的语言,所以这个问题很少见到。与pascal相同,基本(除非你打开OPTION EXPLICIT),命名为 少数。