Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “之后的基本JS Q”;“验证”;用JSLint_Javascript - Fatal编程技术网

Javascript “之后的基本JS Q”;“验证”;用JSLint

Javascript “之后的基本JS Q”;“验证”;用JSLint,javascript,Javascript,我只运行了一个脚本,收到了大量错误——都与下面的示例有关。现在我需要弄清楚一些基础知识,因为我对JS真的很陌生,不知道这些是“关键”错误、警告还是通知 var whatEver = { foo: null, fooArray: [], // This tells me that the curly bracket was expected much earlier barArray: { whatever: '

我只运行了一个脚本,收到了大量错误——都与下面的示例有关。现在我需要弄清楚一些基础知识,因为我对JS真的很陌生,不知道这些是“关键”错误、警告还是通知

var whatEver = {
    foo:         null,
    fooArray:    [],
    // This tells me that the curly bracket was expected much earlier
    barArray:
    {
         whatever:    'somestring'
        ,keyTwo:      'anotherstring'
    },
    // Here I get told that I got "wrong" white spaces
    bar:         document.getElementById( 'someID' )
};
我知道大部分都是“基本的”js内容,到目前为止一切都很好。我只是想知道我是否犯了基本的错误

谢谢。

以下是一些反馈:

  • 在属性名之后有很多空格是不正常的。可能是复制/粘贴问题
  • {}所示的对象不是数组,仅供参考。因此,您可能不想将它们称为数组。如果需要,可以使用[]生成数组文字
  • getElementById('someID');结尾不应该有分号。那是你最大的错误
  • 有时在语法之前使用逗号,有时在语法之后使用逗号。你可以坚持一个。就我个人而言,我的大部分JS都在节点中,逗号在这里是很正常的。不过,两者都有效
  • 我把它放在我的代码示例中,但在这里没有提到它。大括号应始终与父对象在同一直线上。这是因为自动插入分号,如果在{}之前的行上放一个回车符,就会把你搞砸。请参阅:。感谢Michael在下面提到它
    这是我想要的。JSLINT不喜欢它,但我认为它很好。

    此外,(报告的第一个错误),JSLINT希望打开的
    {
    与其标识符在同一行,如
    barArray:{
    ,而不是在下面的一行。Crockford一次又一次地强调了这一点。很抱歉搞砸了-我只是很快用手把它打了下来,没有复制/粘贴。这只是一个示例,不是实际的代码(有几百行)。数组是and
    array[]
    document.getElementById('someID'))
    结尾没有分号。jSLint似乎在我的代码中遇到的问题是在新行处打开了花括号。然后他将它们与以前的某个对象关联。这就是我不明白的。总之:+1@Michael给出了答案。谢谢你。顺便问一下,“Crockford”是什么/谁?Crockford是Douglas Crockford。他写了JavaScript:好的部分,JSLint,我相信“发现”了JSON。他还有一些杀手级的谈话,你可以在这里观看:。哦,仅供参考,你可能想看看JSHint。它比JSLint更具社区驱动性和灵活性。谢谢你的解释。关于JSHint:更好(也更好看)。谢谢你的提醒。顺便问一下:a)当我在一行的开头(而不是结尾)添加
    -逗号时,以及b)如果我收到消息“混合空格和制表符”,是否存在任何潜在问题,这会使我的脚本不稳定吗?让我们看看。1)开头的逗号非常适合捕捉结尾缺少的逗号。这没有什么问题,但它不是客户端最常见的样式。2)空格和制表符混合很烦人,但不会导致任何问题。我建议您只选择一个。请重试,但选中以下选项“假定浏览器”作为文档元素,选中“允许凌乱的空白”作为空白,正如Jamund提到的,document.getElementById('someID')后面只有一个错误分号,regards@nerdcoder谢谢你的留言——我已经找到了“凌乱的空白”选项——我将尝试一下“假设浏览器”。