Javascript 中的“:”运算符
":" operator in Javascript
我正在使用 project polymer https://www.polymer-project.org/ 并尝试在 Rails 应用程序中预编译一些 Web 组件。
我在文件中发现错误:
https://polymer-topeka.appspot.com/components/firebase/firebase.js
所以我猜它格式不正确。
在我用 http://jsbeautifier.org/ 解压后,我尝试使用 jstocoffee 检查可能是什么语法错误:
并发现:
function Ua(a, b) {
return a > b ? 1 : a < b ? -1 : 0
}
var Va;
a: {
var Wa = aa.navigator;
if (Wa) {
var Xa = Wa.userAgent;
if (Xa) {
Va = Xa;
break a
}
}
Va = ""
}
"a:" 是什么意思?因为 js2coffee 会在那里发送错误。它是一个有效的运算符?
函数中
function Ua(a, b) {
return a > b ? 1 : a < b ? -1 : 0
}
说:如果a大于b则return1;否则如果 a 小于 b return -1;否则 return 0.
另一种说法
a: {
是一个全局变量。跟功能没关系。
你代码中的a:
是一个标签。 JavaScript 标签与 break
和 continue
语句一起使用,作为 "go to".
的(有点有限)形式
因此这段代码:
a: {
var Wa = aa.navigator;
if (Wa) {
var Xa = Wa.userAgent;
if (Xa) {
Va = Xa;
break a
}
}
Va = ""
}
工作起来就好像它是这样写的:
var var Wa = aa.navigator;
if (Wa && (Xa = Wa.userAgent) {
Va = Xa;
}
else {
Va = "";
}
因此,如果代码找不到 navigator
和 navigator.userAgent
值,Va
将设置为空字符串。
我正在使用 project polymer https://www.polymer-project.org/ 并尝试在 Rails 应用程序中预编译一些 Web 组件。
我在文件中发现错误:
https://polymer-topeka.appspot.com/components/firebase/firebase.js
所以我猜它格式不正确。
在我用 http://jsbeautifier.org/ 解压后,我尝试使用 jstocoffee 检查可能是什么语法错误:
并发现:
function Ua(a, b) {
return a > b ? 1 : a < b ? -1 : 0
}
var Va;
a: {
var Wa = aa.navigator;
if (Wa) {
var Xa = Wa.userAgent;
if (Xa) {
Va = Xa;
break a
}
}
Va = ""
}
"a:" 是什么意思?因为 js2coffee 会在那里发送错误。它是一个有效的运算符?
函数中
function Ua(a, b) {
return a > b ? 1 : a < b ? -1 : 0
}
说:如果a大于b则return1;否则如果 a 小于 b return -1;否则 return 0.
另一种说法
a: {
是一个全局变量。跟功能没关系。
你代码中的a:
是一个标签。 JavaScript 标签与 break
和 continue
语句一起使用,作为 "go to".
因此这段代码:
a: {
var Wa = aa.navigator;
if (Wa) {
var Xa = Wa.userAgent;
if (Xa) {
Va = Xa;
break a
}
}
Va = ""
}
工作起来就好像它是这样写的:
var var Wa = aa.navigator;
if (Wa && (Xa = Wa.userAgent) {
Va = Xa;
}
else {
Va = "";
}
因此,如果代码找不到 navigator
和 navigator.userAgent
值,Va
将设置为空字符串。