關(guā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
相等運算符
相等運算符用來比較兩個值是否相等牺勾,
如果相等會返回true绘梦,否則返回false
使用 == 來做相等運算
?當(dāng)使用==來比較兩個值時嚎研,如果值的類型不同潘鲫,則會自動進行類型轉(zhuǎn)換罗标,將其轉(zhuǎn)換為相同的類型燥筷,然后再比較
不相等
不相等用來判斷兩個值是否不相等睦授,如果不相等返回true锹杈,否則返回false
?使用 != 來做不相等運算
?不相等也會對變量進行自動的類型轉(zhuǎn)換,如果轉(zhuǎn)換后相等它也會返回false
===
全等
?用來判斷兩個值是否全等迈着,它和相等類似竭望,不同的是它不會做自動的類型轉(zhuǎn)換
如果兩個值的類型不同,直接返回false
!==
不全等
?用來判斷兩個值是否不全等裕菠,和不等類似咬清,不同的是它不會做自動的類型轉(zhuǎn)換
如果兩個值的類型不同,直接返回true
NaN不和任何值相等奴潘,包括他本身
可以通過isNaN()函數(shù)來判斷一個值是否是NaN
如果該值是NaN則返回true旧烧,否則返回false
條件運算符
條件運算符也叫三元運算符
語法:
條件表達式?語句1:語句2;
?執(zhí)行的流程:
條件運算符在執(zhí)行時,首先對條件表達式進行求值画髓,
如果該值為true掘剪,則執(zhí)行語句1,并返回執(zhí)行結(jié)果
如果該值為false奈虾,則執(zhí)行語句2夺谁,并返回執(zhí)行結(jié)果
如果條件的表達式的求值結(jié)果是一個非布爾值,會將其轉(zhuǎ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必須加引號村象,否則會認為它是一個變量,引起來會認為它是一個值攒至,賦值給=號左邊
變量預(yù)解析
alert(a);//只把變量a的聲明提前厚者,賦值不提前,所以彈出undefined迫吐,表示它的值未定義
alert(c);//報錯库菲,c沒有聲明,這是真正的未定義