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