12.30 怎麼去學好Web前端技能 JS面試題及答案有哪些

  怎麼去學好Web前端技能?JS面試題及答案有哪些?很多企業在招聘時都會考察求職者對JavaScript的掌握,其中數據類型是重點。JavaScript中有七種內置數據類型,包括基本類型和對象類型。在面試官提問時他們不會直接考察具體有哪些類型,而是迂迴提問,重點考察你的綜合理解。接下來就給大家分享JavaScript數據類型相關的面試題及答案。

怎麼去學好Web前端技能 JS面試題及答案有哪些

  1、說說你對JavaScript是弱類型語言的理解?

  JavaScript是弱類型語言,而且JavaScript聲明變量的時候並沒有預先確定的類型,變量的類型就是其值的類型,也就是說變量當前的類型由其值所決定。誇張點說上一秒種的String,下一秒可能就是個Number類型,這個過程可能就進行了某些操作發生了強制類型轉換。雖然弱類型的這種不需要預先確定類型的特性給我們帶來了便利,同時也會給我們帶來困擾。為了能充分利用該特性就必須掌握類型轉換的原理。

  2、JavaScript中強制類型轉換是一個非常易出現bug的點,知道強制轉換時候的規則嗎?

  ToPrimitive(轉換為原始值)轉成何種原始類型,取決於type,type參數可選,若指定,則按照指定類型轉換,若不指定,默認根據實用情況分兩種情況,Date為string,其餘對象為number。

  Number運算符轉換規則:null轉換為0,undefined轉換為NaN,true轉換為1,false轉換為0,字符串轉換時遵循數字常量規則,轉換失敗返回NaN。

  String運算符轉換規則:null轉換為'null',undefined轉換為undefined,true轉換為'true',false轉換為'false',數字轉換遵循通用規則,極大極小的數字使用指數形式。

  ToBoolean運算符轉換規則:undefined、null、-0、0或+0、NaN、''(空字符串)轉換結果為false,其他全部為true。

  3、在什麼情況下發生什麼樣的轉換?

  什麼時候自動轉換為string類型?1)在沒有對象的前提下;2)當有對象且與對象+時候。

  什麼時候自動轉換為Number類型?1)有加法運算符,但是無String類型的時候;2)除了加法運算符,其他運算符都會把運算自動轉成數值。注意:null轉為數值時為0,而undefined轉為數值時為NaN。

  什麼時候進行布爾轉換?1)布爾比較時;2)if(obj),while(obj)等判斷時或者三元運算符只能夠包含布爾值。

  4、怎麼判斷一個值到底是數組類型還是對象?

  1)通過typeof操作符來判斷一個值屬於哪種基本類型。

  2)通過instanceof操作符也可以對對象類型進行判定,其原理就是測試構造函數的prototype是否出現在被檢測對象的原型鏈上。

  5、toString和String的區別是什麼?

  1)toString()可以將數據都轉為字符串,但是null和undefined不可以轉換。

  2)toString()括號中可以寫數字,代表進制,如二進制:.toString(2)。

  3)String()可以將null和undefined轉換為字符串,但是沒法轉進制字符串。

  熟練掌握JavaScript,你就具備了學好Web前端的前提。如果你想了解更多的Web前端相關技能,可以進行系統的學習進階,為自己創造職場高起點!


分享到:


相關文章: