JS數(shù)據(jù)類型及運(yùn)算符

1.JavaScript 定義了幾種數(shù)據(jù)類型? 哪些是原始類型?哪些是復(fù)雜類型?原始類型和復(fù)雜類型的區(qū)別是什么?

六種帘营,其中:number,string,boolean屬于原始類型嘉蕾; object屬于復(fù)雜類型; undefined和null屬于特殊類型。原始類型和復(fù)雜類型的區(qū)別:原始類型是表示Javascript中可用的數(shù)據(jù)或信息的最底層形式或最簡(jiǎn)單形式矫钓,不能表示由其他值組成的值。不可以添加屬性和方法。復(fù)雜類型可以由很多不同類型的javascript對(duì)象組成荞估。復(fù)雜對(duì)象其在內(nèi)存中的大小是未知的咳促,因?yàn)閺?fù)雜對(duì)象可以包含任何值,而不是一個(gè)特定的已知值勘伺。對(duì)于復(fù)雜類型跪腹,可以為其添加屬性和方法,也可以改變和刪除其屬性和方法飞醉。

2.typeof和instanceof的作用和區(qū)別?

typeof:用來(lái)獲取運(yùn)算數(shù)的數(shù)據(jù)類型冲茸。
instanceof用于判斷某個(gè)變量是否是某個(gè)對(duì)象的實(shí)例。
區(qū)別:typeof返回的結(jié)果可能為number缅帘、boolean噪裕、undefined、function股毫、object膳音、string,但這些結(jié)果本身都是字符串铃诬。對(duì)于Array,Null等特殊對(duì)象使用typeof 一律返回object祭陷;instanceof返回值為true或false,是布爾值趣席,可以區(qū)分?jǐn)?shù)組和對(duì)象兵志。

3.如何判斷一個(gè)變量是否是數(shù)字、字符串宣肚、布爾想罕、函數(shù)?

使用typeof檢測(cè):

typeof

4.NaN是什么? 有什么特別之處?

NaN即”not a number“的縮寫霉涨,代表非數(shù)字值的特殊值按价,用于指示某個(gè)值不是數(shù)字◇仙可以把 Number 對(duì)象設(shè)置為該值楼镐,來(lái)指示其不是數(shù)字值。需要注意的是往枷,NaN 與其他數(shù)值進(jìn)行比較的結(jié)果總是不相等的框产,包括它自身在內(nèi)。因此错洁,不能與 Number.NaN 比較來(lái)檢測(cè)一個(gè)值是不是數(shù)字秉宿,而只能調(diào)用 isNaN() 來(lái)比較。

5.如何把非數(shù)值轉(zhuǎn)化為數(shù)值?

有三個(gè)函數(shù)可以把非數(shù)值轉(zhuǎn)換為數(shù)值:Number()或 parseInt()或parseFloat()

6.==與===有什么區(qū)別

== 相等=== 嚴(yán)格相等===是嚴(yán)格意義的相等屯碴,只需注意NaN和NaN不等就行了描睦。而使用==的時(shí)候,javascript會(huì)幫我們做類型轉(zhuǎn)換窿锉,例如:1.如果一個(gè)是null酌摇,一個(gè)是undefined膝舅,那么相等2.如果一個(gè)是數(shù)字嗡载,一個(gè)是字符串窑多,先將字符串轉(zhuǎn)為數(shù)字,然后比較3.如果一個(gè)值是true/false則將其轉(zhuǎn)為1/0比較4.如果一個(gè)值是對(duì)象洼滚,一個(gè)是數(shù)字或字符串埂息,則嘗試使用valueOf和toString轉(zhuǎn)換后比較5.其它就不相等了

7.break與continue有什么區(qū)別

break直接跳出循環(huán),一次也不再執(zhí)行遥巴;而continue只跳出本次循環(huán)千康,以后的循環(huán)仍會(huì)執(zhí)行。

8.void 0 和 undefined在使用場(chǎng)景上的區(qū)別

void 會(huì)執(zhí)行后面的表達(dá)式并返回 undefined铲掐,通常 void 0 會(huì)用來(lái)獲取 undefined拾弃。undefined 可能會(huì)被重寫,但是 void 0 返回的值一定會(huì)是 undefined摆霉。

9.以下代碼的輸出結(jié)果豪椿?

console.log(1+1);
 console.log("2"+"4"); 
console.log(2+"4"); 
console.log(+"4");

第一個(gè)直接做加法輸出,第二個(gè)字符串拼接后輸出携栋,第三個(gè)數(shù)字會(huì)先被轉(zhuǎn)換成字符串搭盾,第四個(gè)只有一個(gè)字符串會(huì)嘗試轉(zhuǎn)化為數(shù)字。

10.以下代碼的輸出結(jié)果

var a = 1;  
a+++a;  
typeof a+2;

第二句相當(dāng)于(a++)+a;結(jié)果為3婉支,第三句相當(dāng)于(typeof a)+2鸯隅;即字符串”number“和2拼接,得到”number2“

11.以下代碼輸出結(jié)果向挖?

var a = 1;
 var b = 3;
 console.log( a+++b );

先算a++為1蝌以,再用這個(gè)值加上b,結(jié)果為4何之。但a的值此時(shí)變成了2

12.以下代碼輸出結(jié)果饼灿?

var a = 1, b = 2, c = 3;
var val = typeof a + b || c >0
console.log(val) 
/*結(jié)果為number2,先運(yùn)算typeof a帝美,結(jié)果為number碍彭,接著與b拼接變?yōu)閚umber2,||運(yùn)算符前面的值為true的話悼潭,則直接返回前面的值庇忌。所以結(jié)果為number2。*/
var d = 5;
var data = d ==5 && console.log('bb')
console.log(data)
/*結(jié)果為”bb“,&&運(yùn)算符舰褪,若前面值為true皆疹,則返回后面的值”bb“*/
var data2 = d = 0 || console.log('haha')
console.log(data2)
/*結(jié)果為”haha",||運(yùn)算符左邊為0,所以直接返回其右邊的"haha*/ 
var x = !!"Hello" + (!"world", !!"from here!!");
console.log(x)
/*結(jié)果為2占拍,略就!運(yùn)算符會(huì)將字符串轉(zhuǎn)換為布爾值捎迫,逗號(hào)運(yùn)算符返回其后面的表達(dá)式的值,即true表牢,與前面的true相加時(shí)會(huì)轉(zhuǎn)換成數(shù)字1+1窄绒,所以最終結(jié)果為2*/
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市崔兴,隨后出現(xiàn)的幾起案子彰导,更是在濱河造成了極大的恐慌,老刑警劉巖敲茄,帶你破解...
    沈念sama閱讀 218,451評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件位谋,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡堰燎,警方通過(guò)查閱死者的電腦和手機(jī)掏父,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)秆剪,“玉大人赊淑,你說(shuō)我怎么就攤上這事∧窨睿” “怎么了膏燃?”我有些...
    開(kāi)封第一講書人閱讀 164,782評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)何什。 經(jīng)常有香客問(wèn)我组哩,道長(zhǎng),這世上最難降的妖魔是什么处渣? 我笑而不...
    開(kāi)封第一講書人閱讀 58,709評(píng)論 1 294
  • 正文 為了忘掉前任伶贰,我火速辦了婚禮,結(jié)果婚禮上罐栈,老公的妹妹穿的比我還像新娘黍衙。我一直安慰自己,他們只是感情好荠诬,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,733評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布琅翻。 她就那樣靜靜地躺著,像睡著了一般柑贞。 火紅的嫁衣襯著肌膚如雪方椎。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,578評(píng)論 1 305
  • 那天钧嘶,我揣著相機(jī)與錄音棠众,去河邊找鬼。 笑死有决,一個(gè)胖子當(dāng)著我的面吹牛闸拿,可吹牛的內(nèi)容都是我干的空盼。 我是一名探鬼主播,決...
    沈念sama閱讀 40,320評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼新荤,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼胰伍!你這毒婦竟也來(lái)了书闸?” 一聲冷哼從身側(cè)響起瞒窒,我...
    開(kāi)封第一講書人閱讀 39,241評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤躲惰,失蹤者是張志新(化名)和其女友劉穎励七,沒(méi)想到半個(gè)月后智袭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡掠抬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,878評(píng)論 3 336
  • 正文 我和宋清朗相戀三年吼野,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片两波。...
    茶點(diǎn)故事閱讀 39,992評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡瞳步,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出腰奋,到底是詐尸還是另有隱情单起,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評(píng)論 5 346
  • 正文 年R本政府宣布劣坊,位于F島的核電站,受9級(jí)特大地震影響局冰,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜康二,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,336評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望沫勿。 院中可真熱鬧挨约,春花似錦、人聲如沸产雹。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,912評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至时甚,卻和暖如春隘弊,著一層夾襖步出監(jiān)牢的瞬間哈踱,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,040評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工梨熙, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留开镣,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,173評(píng)論 3 370
  • 正文 我出身青樓邪财,卻偏偏與公主長(zhǎng)得像质欲,于是被迫代替她去往敵國(guó)和親树埠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子嘶伟,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,947評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容