Javascript语法需要一些解释
我正在阅读Javascript的好部分,并在第5章继承中发现了以下代码片段:Javascript语法需要一些解释,javascript,code-snippets,Javascript,Code Snippets,我正在阅读Javascript的好部分,并在第5章继承中发现了以下代码片段: var coolcat = function (spec) { var that = cat(spec), super_get_name = that.superior('get_name'); that.get_name = function (n) { return 'like ' + super_get_name() + ' baby'; return that;
var coolcat = function (spec) {
var that = cat(spec),
super_get_name = that.superior('get_name');
that.get_name = function (n) {
return 'like ' + super_get_name() + ' baby'; return that;
}
}
我被第2行cat(规格)后的昏迷弄糊涂了。这条线到底是干什么的?(2号线+3号线)
谢谢缩进错误,应该是:
var that = cat(spec),
super_get_name = that.superior('get_name');
这等于说:
var that = cat(spec);
var super_get_name = that.superior('get_name');
压痕错误,应为:
var that = cat(spec),
super_get_name = that.superior('get_name');
这等于说:
var that = cat(spec);
var super_get_name = that.superior('get_name');
这只是在一条语句中声明两个变量的快捷方式,相当于:
var that = cat(spec);
var super_get_name = that.superior('get_name');
JavaScript中的
逗号运算符计算其两个操作数(从左到右)并返回第二个操作数的值
var
语句由以下形式的一个或多个表达式组成:
varname [= value]
其中方括号表示可选组件。将军是这样的:
变量varname1[=value1[,varname2[,varname3…[,varnameN]]
您通常只会在var
语句中看到逗号运算符,并且:
for(变量i=0,x=complex_数组[0];i
但它也可以在其他地方使用。这只是在一条语句中声明两个变量的快捷方式,相当于:
var that = cat(spec);
var super_get_name = that.superior('get_name');
JavaScript中的
逗号运算符计算其两个操作数(从左到右)并返回第二个操作数的值
var
语句由以下形式的一个或多个表达式组成:
varname [= value]
其中方括号表示可选组件。将军是这样的:
变量varname1[=value1[,varname2[,varname3…[,varnameN]]
您通常只会在var
语句中看到逗号运算符,并且:
for(变量i=0,x=complex_数组[0];i
但是它可以在其他地方使用。它允许您声明另一个变量。它相当于以下内容:
var that = cat(spec);
var super_get_name = that.superior('get_name');
请参阅。它允许您声明另一个变量。它相当于以下内容:
var that = cat(spec);
var super_get_name = that.superior('get_name');
参见。
var x=y
是一条语句,但它包含一个表达式(y
)。但是,var语句中的表达式不能包含逗号运算符。@Šime:但是整个语句不是一个表达式,所以我有点不确定如何向初学者正确解释这些细节。我的最新更新是否更清晰/准确?var x=y
是一条语句,但它包含一个表达式(y
)。但是,var语句中的表达式不能包含逗号运算符。@Šime:但是整个语句不是一个表达式,所以我有点不确定如何向初学者正确解释这些细节。我的最新更新是否更清晰/准确?