經(jīng)過javascript兩個(gè)月的學(xué)習(xí)厉亏,想自己通過寫文章的形式再次鞏固js的基礎(chǔ)知識(如有錯誤,-_-可能我沒帶腦子,歡迎出門隨時(shí)帶腦子的你指出~咳咳),本文主要復(fù)習(xí)javascript語法基礎(chǔ)器虾。
Day1----javascript的6種數(shù)據(jù)類型
ECMAScript有5種簡單數(shù)據(jù)類型(基本數(shù)據(jù)類型:undefined,null,boolean,number,string)和1種復(fù)雜數(shù)據(jù)類型(object)躬窜。
一浇垦、undefined
含義:在使用var聲明變量但未對其初始化。
例如:var message;
alert(message == undefined);//結(jié)果是true
注意:1荣挨、一般男韧,不存在顯式地把一個(gè)變量設(shè)置為undefined(var message = undefined)。
? ? ? ? ? ? 2默垄、對未初始化和未聲明的變量執(zhí)行typeof操作符都返回了undefined值此虑。例如:
? ? ? ? ? ? ?var message ;
? ? ? ? ? ? ?alert(typeof message); // ?結(jié)果為 "undefined"
? ? ? ? ? ? ?alert(typeof age);? // ?age 未聲明,結(jié)果為 “undefined”
二口锭、null
含義:null值表示一個(gè)空對象指針朦前,因此typeof null會返回 object 。
注意:1鹃操、undefined值是派生自null值的韭寸。因此,alert(null == undefined);結(jié)果為true荆隘。
三恩伺、boolean
含義:boolean有兩個(gè)字面值:true和false。
注意:1椰拒、boolean類型的字面值false和true是區(qū)分大小寫的晶渠,這里只能為小寫才表示是boolean的字 ? ? ? ? ? ?面值凰荚。
? ? ? ? ? 2、除NaN,undefined,0/-0,null,"",以外的字符串或數(shù)字褒脯,用boolean()強(qiáng)制轉(zhuǎn)換后便瑟,都為true。 ? ? ? ? ? ? ?字符串"0"也為true憨颠。
四胳徽、number
含義:整數(shù)和浮點(diǎn)數(shù)
注意:1、正零(+0)和負(fù)零(-0)被認(rèn)為相等
? ? ? ? ? ?2爽彤、由于浮點(diǎn)數(shù)的最高精度是17位小數(shù)养盗,在進(jìn)行算術(shù)運(yùn)算時(shí)其精確度遠(yuǎn)遠(yuǎn)不如整數(shù),如0.1+
? ? ? ? ? ?0.2的和不是0.3适篙,而是0.30000000000000004往核。
重點(diǎn):
一、NaN
NaN:非數(shù)值嚷节。
1聂儒、任何涉及NaN的操作都會返回NaN ? 2、NaN與任何值都不相等硫痰,包括它本身?
五衩婚、object
objiect:一組數(shù)據(jù)和功能的集合。
object的每個(gè)實(shí)例都有下列屬性和方法:
? ? ?1效斑、constructor : 保存著用于創(chuàng)建當(dāng)前對象的函數(shù)非春。
? ? ?2、hasownProperty(propertyName) : 用于檢測給定的屬性在當(dāng)前對象中(而不是實(shí)例的原型中)是否存在缓屠。注意 屬性名以字符串形式出現(xiàn) “ propertyName”奇昙。
? ? 3、isPrototypeOf(object) : 用于檢查傳入的對象是否是傳入對象的原型敌完。
? ? 4储耐、propertyIsEnumerable(propertyName) : 用于檢查給定的屬性是否能夠使用for-in語句來枚舉。
? ? 5滨溉、toLocalString() :返回對象的字符串表示什湘,該字符串與執(zhí)行環(huán)境的地區(qū)對應(yīng)。
? ? 6业踏、toString() : 返回對象的字符串表示禽炬。
? ? 7、valueOf() : 返回對象的字符串勤家、數(shù)值或布爾值表示腹尖。與toString()方法的返回值相同。