運(yùn)算符
IsNaN();判斷一個(gè)變量的值是不是數(shù)字(值是不是數(shù)字);
如果返回的結(jié)果是false,代表是數(shù)字。
如果返回的結(jié)果是true,代表不是數(shù)字。
一、算數(shù)運(yùn)算符
加、減、乘、除、取余、()
加法 +:
注意事項(xiàng):如果都是數(shù)字類型相加,最后的結(jié)果就是數(shù)字類型。/
如果在相加的過程中,只要有一個(gè)是字符串類型,那么最后的結(jié)果都是字符串類型(拼接字符串)
減法 -:
注意事項(xiàng):
1.如果都是數(shù)字類型相減,最后的結(jié)果就是數(shù)字類型
2.如果是字符串類型的數(shù)字相減,最后的結(jié)果是數(shù)字類型(發(fā)生了隱式類型轉(zhuǎn)換)
3.如果是非數(shù)字的字符串類型相減,最后的結(jié)果NaN
乘法*
注意事項(xiàng):
1.如果都是數(shù)字類型相乘,最后的結(jié)果就是數(shù)字類型
2.如果是字符串類型的數(shù)字相乘,最后的結(jié)果是數(shù)字類型(發(fā)生了隱式類型轉(zhuǎn)換)
3.如果是非數(shù)字的字符串類型相乘,最后的結(jié)果NaN
除法?/
注意事項(xiàng):與乘法運(yùn)算的特征一樣
取余?% (獲取余數(shù))
注意事項(xiàng):與乘法運(yùn)算的特征一樣
() :優(yōu)先級 ?
注意事項(xiàng):
1.在計(jì)算過中遇到(),先計(jì)算()中的內(nèi)容
2.如果是()進(jìn)行優(yōu)先計(jì)算的時(shí)候,外部不能在使用[]
二、賦值運(yùn)算符
= :賦值運(yùn)算符,作用是用來給變量賦值運(yùn)算的,不是進(jìn)行相等比較的。
+= :語法糖寫法。.
a +=b ;本質(zhì)上就是 a = a + b
-= :a +=b ;本質(zhì)上就是 a = a + b
*= :a *= b;本質(zhì)上就是 a = a * b
/= :a /= b;本質(zhì)上就是 a = a / b
三、比較運(yùn)算符
> 大于
< 小于
>= 大于或等于
<= 小于或等于
== 相等如果變量的值是相等的,那么最后的結(jié)果就是相等的。
=== 全等 必須保證數(shù)據(jù)類型和值都一樣。
!= 不等于 值不相等,就是不相等的。
!== 全不等于 值和數(shù)據(jù)類型不一樣。
總結(jié):
1. 通過比較運(yùn)算以后得到的結(jié)果是布爾類型的結(jié)果。
2. >= ?<= 只要滿足其中一個(gè)結(jié)果就可以了(或者的意思)
四、邏輯運(yùn)算符
|| :或運(yùn)算
特征:true ?|| ?true === true
true ?|| ?false === true
false ?|| ?false === false
&& :且運(yùn)算(與運(yùn)算)
特征:true ?&& ?true === true
true ?&& ?false === false
false ?|| ?false === false
! :非(取反的意思)
特征:!true ?=== ?false
!false ?=== ?true
總結(jié):
當(dāng)程序中出現(xiàn)需要將多個(gè)條件連接到一塊的時(shí)候,可以用邏輯運(yùn)算符。
或運(yùn)算特征:在進(jìn)行或運(yùn)算的時(shí)候,只要有一個(gè)條件成立,最后的結(jié)果都是成立的。
且運(yùn)算特征:在進(jìn)行且運(yùn)算的時(shí)候,只要有一個(gè)條件不成立,最后的結(jié)果就不成立。
非運(yùn)算特征:取反。
五、一元運(yùn)算符
++
--
一元運(yùn)算符的本質(zhì):就是在原來值的基礎(chǔ)上加1或者 減1
先++和 后++ 的區(qū)別:
當(dāng)把一元運(yùn)算后的結(jié)果賦值給一個(gè)新的變量,這個(gè)變量的值有區(qū)別。
1、如果是b = ++a,a永遠(yuǎn)都要加1,由于加號在前,先對變量a加1,然后將加1后的值賦值給變量b (先計(jì)算后賦值)
2、如果是b = a++,a永遠(yuǎn)都要加1,由于加號在后,先把變量a原來的值賦值給變量b,最后變量a再加1 (先賦值后計(jì)算)
分支語句
為什么學(xué)分支語句?
為了保證程序在運(yùn)算(運(yùn)行)過程中,合理性。
語法:
1、條件判斷:
if(條件) {
對應(yīng)的邏輯代碼1
}else {
對應(yīng)的邏輯代碼2
}
條件判斷語法執(zhí)行順序:
程序按照從上向下執(zhí)行
執(zhí)行if中的條件,判斷一下判斷的結(jié)果是否成立(是否為true)
如果條件成立(true),那么程序就執(zhí)行 邏輯代碼1,邏輯代碼2不執(zhí)行。
如果條件不成立(false),那么程序就執(zhí)行 邏輯代碼2,邏輯代碼1不執(zhí)行。
條件判斷中可以繼續(xù)嵌套條件判斷。
如果else中沒有相關(guān)的代碼處理,else可以省略。
例:
????<script>
????????var?sex?=?prompt('您的性別是?');
????????if?(sex?==?'男')?{
????????????alert('先生你好')
????????}?else?{
????????????alert('女士你好')
????????}
????</script>
條件判斷中可以設(shè)置多個(gè)條件,使用邏輯運(yùn)算符連接。
??var?age?=?prompt('年齡是?');
????????var?sex?=?prompt('性別是?');
????????if?(age?>=?18?&&?age?<=?35?&&?sex?==?'男')?{
????????????alert('應(yīng)聘成功');
????????}?else?{
????????????alert('應(yīng)聘失敗');
????????}
接收用戶輸入一個(gè)數(shù)字,判斷一個(gè)數(shù)是偶數(shù)還是奇數(shù)【將非法輸入考慮進(jìn)去】
var?value1?=?Number(prompt('請輸入數(shù)字1'));
????????var?value2?=?Number(prompt('請輸入數(shù)字2'));
????????if?(isNaN(value1)?==?false?&&?isNaN(value2)?==?false)?{
????????????if?(value1?>?value2)?{
????????????????alert('最大值是第一個(gè)');
????????????}?else?{
????????????????alert('最大值是第二個(gè)');
????????????}
????????}?else?{
????????????alert('請輸入合法的數(shù)字');
????????}
2、多條件判斷:
if(條件1) {
邏輯代碼1;
}else if(條件2) {
邏輯代碼2;
}else if(條件3) {
邏輯代碼3
}else {
邏輯代碼4
}
執(zhí)行順序:
1、程序從上向下依次執(zhí)行
2、先判斷條件1是否成立(true,false),如果條件1成立,程序執(zhí)行邏輯代碼1,其他代碼不執(zhí)行。
3、如果條件1不成立,然后判斷第二個(gè)條件,如果條件2成立,則執(zhí)行邏輯代碼2,其他代碼不執(zhí)行。
4、如果條件2不成立,則繼續(xù)向下執(zhí)行。
5、所有的條件都不成立,最后執(zhí)行else中的代碼。
3、三元表達(dá)式(三目運(yùn)算符):
三元表達(dá)式在執(zhí)行順序上,其實(shí)與單條件判斷是一樣的(是單條件判斷的另外一種寫法)
在比較的過程中會實(shí)現(xiàn)對變量進(jìn)行賦值運(yùn)算
語法:
條件?邏輯代碼1 : 邏輯代碼2;
執(zhí)行順序:
1.先判斷條件是否成立, 如果條件成立那么就執(zhí)行邏輯代碼1
2.如果條件不成立,就執(zhí)行邏輯代碼2
總結(jié):
// 1.三元表達(dá)式最好替換單條件判斷
// 2.三元表達(dá)式也可以嵌套使用
// 3.程序過程中,哪些語法簡單就用哪種
?
斷點(diǎn)調(diào)試:
使用步驟:
1、先運(yùn)行程序
2、打開瀏覽器控制———選擇sources選項(xiàng)卡。
3、點(diǎn)擊對應(yīng)的HTML頁面程序。
4、在瀏覽器中設(shè)置斷點(diǎn)(在程序?qū)?yīng)的行號前點(diǎn)擊鼠標(biāo)左鍵,目前推薦將斷點(diǎn)設(shè)置到代碼的第一行位置處)
5、刷新頁面,重新執(zhí)行程序。
6、點(diǎn)擊F10或者下一步(查看程序執(zhí)行的過程及上一步執(zhí)行的結(jié)果)
如何觀察變量值的變化:
1、直接將鼠標(biāo)放到變量上。
2、將變量(或者條件填到監(jiān)視窗口中)【1.直接在監(jiān)視窗口中添加 ?2.選中對應(yīng)的變量,點(diǎn)擊鼠標(biāo)右鍵,選擇添加到監(jiān)視窗口】
?
?
?
?
?
?
?
?
?
?
?