使用下面的代码,特别是查看第2段...如果var str =“sting equality test ...”+ strA,为什么第2行,第3行等不输出相同的输出加上他们自己的行?
编辑抱歉没有正确解释 - 我实际上只是想知道为什么这个代码(一旦我清理了它)不会产生重复的第一行(第2段),再加上我在第2和第3行所说的我不需要它,它只是一个练习,我只是不明白。好像它应该
function init()
{
var strA = "Javascript" === "JAVASCRIPT" ;
var strB = "Javascript" === "Javascript" ;
var flt = 7.5 === 7.5 ;
var intA = 8 !== 8 ;
var intB = 24 > 12 ;
var intC = 24 < 12 ;
var intD = 24 <= 24 ;
var str = "String equality test: " + strA ;
str += "<br>String equality test 2: " + strB ;
str += "<br>Float equality test: " ; + strC ;
str += "<br>Integer inequality test: " + intA ;
str += "<br>Greater than test: " + intB ;
str += "<br>Less than test: " + intC ;
str += "<br>Less than/Equal to test: " + intD ;
document.getElementById( "panel" ).innerHTML = str ;
}
document.addEventListener("DOMContentLoaded" , init , false) ;
所以我得到的输出如下;
字符串相等性测试:false
字符串相等测试2:真实
浮动平等测试:真实
整数不等式检验:假
大于测试:真实
不到测试:假
小于/等于测试:真实
这显然是正确的,我只是不明白如何输出以下内容,因为我确实将每行添加到var str,这是“String equakity test:false
String equality test: false String equality test: false String equality test 2: true String equality test: false Float equality test: true String equality test: false Integer inequality test: false String equality test: false Greater than test: true String equality test: false Less than test: false String equality test: false Less than/Equal to test: true
答案 0 :(得分:1)
;
前面的第三行有一个+
。删除它应该可以解决问题。您尝试在奇怪的strC
之后添加的变量+
不存在。
答案 1 :(得分:0)
我只是不明白以下内容是如何输出的,因为我确实要将每一行添加到var
str
,即"String equakity test: false"
不,str
等于"String equality test: false"
的唯一时间就在第一行之后。每行修改str
变量,通过在之前的行之后添加内容。所以在第一行之后:
var str = "String equality test: " + strA ;
......变量str
现在等于
"String equality test: false"
然后在第二行之后:
str += "<br>String equality test 2: " + strB ;
......变量str
现在等于
"String equality test: false<br>String equality test 2:"
第三行有错误,但假设您删除了额外的分号并修复了变量名称:
str += "<br>Float equality test: " ; + strC ;
// should be
str += "<br>Float equality test: " + flt;
...然后变量str
将等于
"String equality test: false<br>String equality test 2: true<br>Float equality test: true"
......等等。
如果在每行之间添加console.log(str);
语句并在运行代码之前打开浏览器的控制台,则可以清楚地看到这一点。如下所示:http://jsfiddle.net/mfKy9/