当前位置:  开发笔记 > 编程语言 > 正文

JavaScript:'禁止在标识符中引导_'作为JSLint中的一个选项

如何解决《JavaScript:'禁止在标识符中引导_'作为JSLint中的一个选项》经验,为你挑选了2个好方法。

我刚刚开始编写自己的JavaScript框架(仅用于学习体验),并为一些私有成员添加了_,如下所示:

var _isFireBugEnabled = function () {
    return (window.console && window.console.firebug);
};

当我对Crockford的JSLint(一如既往)运行我的代码时,在Recommended Optionson,我被告知不使用_作为标识符.

我的问题是,为什么JSLint警告我不使用_作为标识符?

我在这里缺少一些副作用或影响吗?

PS.就我现在可以扫描而言,书中没有记录



1> Triptych..:

原因是Douglas Crockford讨厌大约78%的Javascript*.许多人认为他有点严格,事实上很多图书馆都在生产代码中使用领先的下划线.我没有看到太多错误.没有副作用.

此外,'$',而不是下划线,是ECMA规范为"系统"代码留出的符号.

来自ECMA 262,第7.6节:

本标准规定了与Unicode标准中给出的语法的不同之处:标识符中的任何位置都允许使用美元符号($)和下划线(_).美元符号仅用于机械生成的代码.

*注意:我很滑稽.他真的只讨厌一半,他通常有充分的理由.我在这里不同意克罗克福德,但他通常是非常正确的.



2> foxxtrot..:

我实际上已经通过电子邮件发送了Crockford.这是他的回答:

我认为_应该保留用于系统代码实现,而不是应用程序使用.

我有点不同意他,我倾向于使用_来为我自己的班级中的真正私人成员加前缀,因为它让我清楚了什么是私有的.谷歌的Caja有一些关于_的使用的规则,但没有任何可能导致你所描述的问题.

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有