gpt4 book ai didi

javascript - 为什么JSlint会返回 "Unexpected ' .'."错误

转载 作者:搜寻专家 更新时间:2023-11-01 04:37:21 25 4
gpt4 key购买 nike

当我通过 jslint 运行此代码时

(function () { return "helloooo"; }).call();

它给我以下错误:

Unexpected '.'.

这是为什么?

当我将函数分配给变量,然后调用它时,我没有遇到任何错误。

这个:

var cb = function () { return "helloooo"; };
cb.call();

不返回任何错误。

但是,我想知道为什么我首先会出错。第一个例子违反了道格拉斯·克罗克福德的什么神圣规则?

最佳答案

这不是坏事。 JSLint 固执己见,而 Crockford 认为,当您在括号内使用函数表达式时,您应该直接调用该方法或将其分配给变量,因为查看它的其他人可能会混淆函数的值和函数的值作为一个值(value)本身。

对于这种情况,Crockford 建议:

(function () { return "helloooo"; }())
^^
Notice how is the function being called

因此 JSLint 在右括号后不期望任何内容,这就是为什么它说它不期望 . 用于调用 call()

你可以看看Code Conventions for the Javascript Programming Language (来自 Crockford) 要了解更多相关信息,请专门查找有关函数的部分。

关于javascript - 为什么JSlint会返回 "Unexpected ' .'."错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19378452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com