關于+操作符
? var a,b,sum;
? var ?a ?= 5;
? var ?b ?= 100%7; ?
? sum = a > b && a*b > 0 ;
? document.write( "我認為 a 的值是:" +a + " b的值是:" + b + "sum 的值是:" + a+b +"<br/>");
為什么sum的值為a和b的值的連接,a和b明明是兩個整型變量啊,a+b不應該是加法運算嗎
? var a,b,sum;
? var ?a ?= 5;
? var ?b ?= 100%7; ?
? sum = a > b && a*b > 0 ;
? document.write( "我認為 a 的值是:" +a + " b的值是:" + b + "sum 的值是:" + a+b +"<br/>");
為什么sum的值為a和b的值的連接,a和b明明是兩個整型變量啊,a+b不應該是加法運算嗎
2016-06-17
舉報
2016-06-17
<!DOCTYPE html>
<html lang="en">
<head>
? ?<meta charset="UTF-8">
? ?<title>Title</title>
</head>
<body>
<script>
? ?var a =10;
? ?var ?b = 20 ;
? ?var ?c = a + b;
? ?document.write(c);
? ?document.write( "看看效果和區(qū)別,應該是符號優(yōu)先級問題:"+ ?(a + b )+ a + b + "a+b");
</script>
</body>
</html>
2016-06-23
好了 謝謝
2016-06-22
為什么我的運行不起來 js 2-13
2016-06-19
汗~~,差點誤導別人。。。結合上樓,我重新歸納哈:
document.write()中原來還帶有結合性和優(yōu)先級:
1.document.write(1+2+"3") //結果為字符串33 ? document.write(typeof(1+2+"3"))
? document.write(1+2) ? ? ? ? //結果為數字3 ? ? ?document.write(typeof(1+2))
? document.write(a+b+"") ? //結果為字符串3 ? ?document.write(typeof(a+b+""))
? document.write(a+b) ? ? ? ?//結果為數字3 ? ? ?document.write(typeof(a+b))
? //原因:括號內按照從左往右順序執(zhí)行,先是1+2=3,3遇到字符串"3",轉變?yōu)樽址?,然后就?33"了。
2.document.write("3"+1+2) //結果為字符串312 ?document.write(typeof("3"+1+2))
? document.write(3+1+2) ? ? //結果為數字6 ? ? ?document.write(typeof(3+1+2))
? //原因:最開始遇到"3",所以后面的數字都轉為字符串。
3.()的優(yōu)先級比算數運算符的高,所以優(yōu)先執(zhí)行
? document.write("3"+(1+2)) ? //結果為字符串33而不是312
2016-06-17
?document.write( "我認為 a 的值是:" +a + " b的值是:" + b + "sum 的值是:" + a+b +"<br/>");;這段代碼你自己亂敲的吧,練習題我看了N遍都沒見過這段代碼。。。 ?同樓上見解。。
2016-06-17
document.write語言中+不表示運算,僅僅表示字符串或者變量的串聯
2016-06-17
再比如
?document.write("a+b")結果為a+b
?document.write(1+2)結果為3
?document.write(1+2+"3")結果為1+23;
?document.write("1+2"+"3+4")結果為1+23+4
2016-06-17
?document.write(內容)中只要內容含有字符串(如空字符"","我認為 a 的值是:","<br/>"),其余整型變量都會轉換為字符串,+相當于將多個字符串相連接,結果以字符串形式輸出。
比方說:var a=1,b=2;
?document.write(a+b)結果為3
?document.write(a+b+""))結果為12