就这样没有误解,这个问题不是关于在JS函数中允许可选参数.
我的问题是由jQuery parseXML
函数激发的,其定义jQuery.js
如下:
// Cross-browser xml parsing
// (xml & tmp used internally)
parseXML: function( data, xml, tmp ) {
...
}
Run Code Online (Sandbox Code Playgroud)
在函数体内,参数xml
和和tmp
都是在使用之前分配的.这意味着它们被用作局部变量,因此函数可以像这样定义:
parseXML: function(data) {
var xml, tmp;
...
}
Run Code Online (Sandbox Code Playgroud)
除了在缩小版本中保存几个字符外,第一种方式的好处是什么jQuery.js
?
假设浏览器遇到<meta>
指定字符编码的标记,如下所示:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
Run Code Online (Sandbox Code Playgroud)
它是否从一开始就重新解析页面开始,因为该部分中的某些前面的字符<head>
可能被错误地解释了?还是有一些其他约束阻止先前的字符被错误地解释?