JS數(shù)據(jù)類(lèi)型及運(yùn)算符相關(guān)

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

JS定義了6種數(shù)據(jù)類(lèi)型:

  • 數(shù)值類(lèi)型
  • 字符串類(lèi)型
  • 布爾值
  • undefined
  • null
  • Object
    原始類(lèi)型:數(shù)值,字符串,布爾值唱捣。它們是最基本的數(shù)據(jù)類(lèi)型不可在細(xì)分了时迫。
    復(fù)雜類(lèi)型:對(duì)象摆尝。對(duì)象是由多個(gè)原始類(lèi)型的值組成的集合,可以看做是存放各種值的容器。(ps對(duì)象細(xì)分的話又可以分為: 對(duì)象,函數(shù),正則表達(dá)式和數(shù)組)
    null和undefined是特殊類(lèi)型的值!!

簡(jiǎn)單細(xì)說(shuō)下null與undefined:
null 與 undefined的含義與用法都差不多,都是表示"沒(méi)有"灵嫌。但是它們二者是有區(qū)別的!
null 表示一個(gè)值被定義了,定義為"空值"葛作。
undefined 表示根本不存在定義!!
借用網(wǎng)上大神的一段證明:設(shè)置一個(gè)值為null是合理的,比如objA.value1 = null;但是如果設(shè)置objA.value1 = undefined就不合理了寿羞。

原始類(lèi)型與復(fù)雜類(lèi)型的區(qū)別:

  1. 基本類(lèi)型變量存的是值,復(fù)雜類(lèi)型的變量存的是內(nèi)存地址
  2. 基本類(lèi)型在賦值的時(shí)候拷貝值赂蠢,復(fù)雜類(lèi)型在賦值的時(shí)候只拷貝地址绪穆,不拷貝值。

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

typeof 是一元運(yùn)算符虱岂,用來(lái)獲取運(yùn)算數(shù)的數(shù)據(jù)類(lèi)型霞幅。返回的值有undefined,boolean,number,string,null,object.而對(duì)象,數(shù)組和null遇到typeof會(huì)返回object量瓜。當(dāng)要判斷某個(gè)對(duì)象是否是數(shù)組或者某個(gè)變量是否是對(duì)象的實(shí)例時(shí)就要使用instanceof, instanceof用來(lái)判斷某個(gè)變量的值是否是某個(gè)對(duì)象的實(shí)例,返回值有true和false.

如何判斷一個(gè)變量是否是數(shù)字途乃、字符串绍傲、布爾、函數(shù)

console.log(typeof x === "number")               
console.log(typeof x === "string")          
console.log(typeof x === "boolean")         
console.log(typeof x === "function")
判斷變量

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

NaN是Not a Number,表示非數(shù)字,與任何值都不相等耍共,包括它自身烫饼。

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

  • Number()
  • parseInt()
  • parseFloat()

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

==是值相等,js會(huì)在一些情況下進(jìn)行隱式的類(lèi)型轉(zhuǎn)換再進(jìn)行比較试读。
===是嚴(yán)格相等(包括值和類(lèi)型)

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

break - 跳出整個(gè)循環(huán)杠纵;如果是多層f循環(huán),跳出當(dāng)前for循環(huán),而不是整個(gè)循環(huán)钩骇。
continue - 跳出本次循環(huán)比藻,執(zhí)行下個(gè)循環(huán)。

void 0 和 undefined在使用場(chǎng)景上有什么區(qū)別?

undefined 不能被重寫(xiě)倘屹。但是在局部作用域中银亲,還是可以被重寫(xiě)的。
所以u(píng)ndefined現(xiàn)常用于全局環(huán)境
void 運(yùn)算符通常只用于獲取 undefined 的原始值纽匙,一般使用 void(0)(等同于 void 0)务蝠。在上述情況中,也可以使用全局變量undefined 來(lái)代替(假定其仍是默認(rèn)值)烛缔。
而 void 可以給任何給定的表達(dá)式求值馏段,并返回 undefined,并且 void 不可被重寫(xiě)轩拨,因此void 0是在局部作用域中替代undefined的最佳選擇

以下代碼的輸出結(jié)果是?為什么?

console.log(1+1);    // 2   因?yàn)槎际菙?shù)字所以會(huì)做加法運(yùn)算
console.log("2"+"4");  // 24 因?yàn)槎际亲址詴?huì)做字符串拼接
console.log(2+"4");  // 24 在有一個(gè)參數(shù)是字符串的情況下會(huì)把另外一個(gè)參數(shù)轉(zhuǎn)換為字符串做字符串拼接
console.log(+"4"); // 4 在只有一個(gè)字符串參數(shù)的時(shí)候會(huì)嘗試將其轉(zhuǎn)換為數(shù)字

以下代碼輸出的結(jié)果是?

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

因?yàn)椋臋?quán)重大于+院喜,所以a+++是(a++)+a,而a++=1之后a=2, 1+2=3,所以a+++a=3, typeof的權(quán)重又比+ 高,所以(typeof a)+2,故最后得出"number2"亡蓉。

以下代碼輸出的結(jié)果是?為什么够坐?

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

最后得出4,因?yàn)?+的權(quán)重比+高,故得(a++)+b, a++=1, 1+3=4寸宵。

遍歷數(shù)組,把數(shù)組里的打印數(shù)組每一項(xiàng)的平方

var arr = [3,4,5];
for (let i = 0; i < arr.length; i++) {
    console.log(arr[i]*arr[i]);    
}

遍歷JSON,打印里面的值

var obj = {
    name: 'hunger',
    sex: 'male',
    age: 28
}
for(var i in obj){
    console.log(obj[i]);
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末元咙,一起剝皮案震驚了整個(gè)濱河市梯影,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌庶香,老刑警劉巖甲棍,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異赶掖,居然都是意外死亡感猛,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)奢赂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)陪白,“玉大人,你說(shuō)我怎么就攤上這事膳灶≡凼浚” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵轧钓,是天一觀的道長(zhǎng)序厉。 經(jīng)常有香客問(wèn)我,道長(zhǎng)毕箍,這世上最難降的妖魔是什么弛房? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮而柑,結(jié)果婚禮上文捶,老公的妹妹穿的比我還像新娘。我一直安慰自己媒咳,他們只是感情好拄轻,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著伟葫,像睡著了一般恨搓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天斧抱,我揣著相機(jī)與錄音常拓,去河邊找鬼。 笑死辉浦,一個(gè)胖子當(dāng)著我的面吹牛弄抬,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播宪郊,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼掂恕,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了弛槐?” 一聲冷哼從身側(cè)響起懊亡,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎乎串,沒(méi)想到半個(gè)月后店枣,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叹誉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年鸯两,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片长豁。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡钧唐,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出匠襟,到底是詐尸還是另有隱情钝侠,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布宅此,位于F島的核電站,受9級(jí)特大地震影響爬范,放射性物質(zhì)發(fā)生泄漏父腕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一青瀑、第九天 我趴在偏房一處隱蔽的房頂上張望璧亮。 院中可真熱鬧,春花似錦斥难、人聲如沸枝嘶。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)群扶。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間竞阐,已是汗流浹背缴饭。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留骆莹,地道東北人颗搂。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像幕垦,于是被迫代替她去往敵國(guó)和親丢氢。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

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