關(guān)系運(yùn)算符:
var result = 5>10
console.log('result'+result); //false
非數(shù)值轉(zhuǎn)成數(shù)字在比較
1>'0'
2>null
1>true
'11'<'5' true (比較字符編碼) 1<5
'123'< +'1' false
相等運(yùn)算符
相等運(yùn)算符用來比較兩個值是否相等矩乐,
如果相等會返回true,否則返回false
使用 == 來做相等運(yùn)算
?當(dāng)使用==來比較兩個值時,如果值的類型不同,則會自動進(jìn)行類型轉(zhuǎn)換允瞧,將其轉(zhuǎn)換為相同的類型悯恍,然后再比較
不相等
不相等用來判斷兩個值是否不相等,如果不相等返回true司忱,否則返回false
?使用 != 來做不相等運(yùn)算
?不相等也會對變量進(jìn)行自動的類型轉(zhuǎn)換槐臀,如果轉(zhuǎn)換后相等它也會返回false
===
全等
?用來判斷兩個值是否全等锄蹂,它和相等類似,不同的是它不會做自動的類型轉(zhuǎn)換
如果兩個值的類型不同水慨,直接返回false
!==
不全等
?用來判斷兩個值是否不全等得糜,和不等類似,不同的是它不會做自動的類型轉(zhuǎn)換
如果兩個值的類型不同晰洒,直接返回true
NaN不和任何值相等朝抖,包括他本身
可以通過isNaN()函數(shù)來判斷一個值是否是NaN
如果該值是NaN則返回true,否則返回false
條件運(yùn)算符
條件運(yùn)算符也叫三元運(yùn)算符
語法:
條件表達(dá)式?語句1:語句2;
?執(zhí)行的流程:
條件運(yùn)算符在執(zhí)行時欢顷,首先對條件表達(dá)式進(jìn)行求值槽棍,
如果該值為true,則執(zhí)行語句1抬驴,并返回執(zhí)行結(jié)果
如果該值為false炼七,則執(zhí)行語句2,并返回執(zhí)行結(jié)果
如果條件的表達(dá)式的求值結(jié)果是一個非布爾值布持,會將其轉(zhuǎn)換為布爾值然后在運(yùn)算
由于class是js中的保留關(guān)鍵字豌拙,所以設(shè)置class屬性時,要寫為className
設(shè)置一個匿名函數(shù)
function aa(){
alert('hello!');
window.onload = function(){}题暖; 整個文檔加載完之后執(zhí)行一個匿名函數(shù)
function skin01(){
var oLink = document.getElementById('link1');
oLink.href = "css/1.css";
DOM是為了操作文檔(網(wǎng)頁)的API按傅,document是它的一個對象
BOM是為了操作瀏覽器的API,window是它的一個對象
常用BOM對象還有:alert胧卤、定時器等
通過innerHTML可以讀寫元素包括的內(nèi)容
document.write和innerHTML的區(qū)別
document.write只能重繪整個頁面
innerHTML可以重繪頁面的一部分
通過[]操作屬性可以寫變量
'red';//red必須加引號唯绍,否則會認(rèn)為它是一個變量,引起來會認(rèn)為它是一個值枝誊,賦值給=號左邊
變量預(yù)解析
alert(a);//只把變量a的聲明提前况芒,賦值不提前,所以彈出undefined叶撒,表示它的值未定義
alert(c);//報錯绝骚,c沒有聲明,這是真正的未定義