Javascript最佳实践,为什么要使用逗号来链接函数/变量声明?

Javascript最佳实践,为什么要使用逗号来链接函数/变量声明?,javascript,Javascript,我一直在为jQuery“jQueryLog”开发一个插件,以允许调试链选择器和返回值。如果你想查看它,你可以这样做 这已经是第二个版本了。第一个版本实际上是一个经过编辑的jQuery,在执行此操作时,我必须阅读jQuery以了解内部是如何工作的。问题由此而来: var jQuery = function( selector, context ) { // The jQuery object is actually just the init constructor 'enhanc

我一直在为jQuery“jQueryLog”开发一个插件,以允许调试链选择器和返回值。如果你想查看它,你可以这样做

这已经是第二个版本了。第一个版本实际上是一个经过编辑的jQuery,在执行此操作时,我必须阅读jQuery以了解内部是如何工作的。问题由此而来:

var jQuery = function( selector, context ) {
        // The jQuery object is actually just the init constructor 'enhanced'
        return new jQuery.fn.init( selector, context, rootjQuery );
    },

    // Map over jQuery in case of overwrite
    _jQuery = window.jQuery,

    // Map over the $ in case of overwrite
    _$ = window.$,

    // A central reference to the root jQuery(document)
    rootjQuery,

    // A simple way to check for HTML strings or ID strings
    // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
    quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
    (...)

我在这里看到的唯一原因是缩微器具有更少的无法缩减的文本。但是还有其他原因吗?

这只是一种将所有变量保留在函数范围内的较短方法,同时确保它们在定义之前不被使用

在(2010年9月,O'Reilly)中,Stoyan Stefanov称之为单一
var
模式

JavaScript使您能够在一个脚本中的任意位置拥有多个var语句 函数,它们的行为就好像变量是在 函数的顶部。这种行为被称为提升。。。你用 一个var语句,并声明多个由逗号分隔的变量。 最好也使用初始值初始化变量 声明时的值。这可以防止逻辑错误(所有错误) 未初始化和声明的变量使用值初始化
未定义
),还可以提高代码的可读性


读了这篇文章,我不知道在“var”上使用逗号是否曾被宣布为行业“最佳实践”。充其量,这是一种风格偏好。我很想读任何你可以提供的文章,认为这是一个最好的实践。但是,为什么你不说这是一个重复的问题?AJAX81:我猜如果你认为JSLITEN是一个最佳的实践,那么它所做的任何建议也将是一个最佳实践。这是一个重复的问题。
function jQuery ( selector, context ) { ... }

var _jQuery = window.jQuery;
var _$ = window.$;
etc...