前言
如果面試題按類型來分,主要涉及到“技術”與“非技術”兩大類,技術類別下涉及到的子類別有:
這四大類別的面試題若按出現頻率來劃分,則面試時 100% 會問到的題型有:“移動端&PC端布局類、JavaScript 核心基礎類”。本次選擇這兩類中難度更高一些的 “JavaScript 核心基礎類” 面試題,進行了分析和解答,供面試前準備。
特別說明:
假如你在面試時被這些題型卡住了,就必須正視自己的知識短板,并且要心悅城服的刻苦鉆研、直至學會為止!畢竟想要成為一個合格的 “WEB前端工程師”,掌握以下這些 JavaScript 核心的基礎知識,才擔得上“合格”這兩個字,否則就是“冒牌”的哦~
一、JavaScript 的 typeof 返回哪些數據類型?
分析:
這道題檢驗的是 JS 基本功,只要對 typeof 運算符是了解的,就沒有太大難度。具體在回答的時候,再結合理論知識和編碼過程中實際情況進行回答即可。另外,考慮到面試時的嚴謹性, ES2015 中新增的類型也并入回復中。
建議回復:
首先,JavaScript 中一共有兩大數據類型:
? 基礎類型包括:Number、String、Boolean、Null、Undefined、Symbol(該類型位 ES2015 中新增類型)
? 引用類型包括:Object typeof 運算符把類型信息以字符串形式返回,需要注意的是 typeof 返回的類型和 JavaScript 定義的類型有細微的差異。 typeof 返回七種可能的值:“number”、“string”、“boolean”、“object”、"symbol"、“function”和“undefined”。
二、請寫出以下代碼運算結果:
alert(typeof null);alert(typeof undefined);alert(typeof NaN);alert(NaN == undefined);alert(NaN == NaN);var str = "123abc";alert(typeof str++);alert(str);
分析:
這道題與“題目一”是連環扣,當“題目一”回答完后,通過此題再一次強化運算符和數據類型的基本功。
建議回復:
本題主要是考察 typeof 判斷值的類型,它們輸出的結果依次是:
alert(typeof null); // objectalert(typeof undefined); // undefinedalert(typeof NaN); // numberalert(NaN == undefined); // falsealert(NaN == NaN); // falsevar str = "123abc";alert(typeof str++); // numberalert(str); // NaN
三、例舉至少 3 種強制類型轉換和 2 種隱式類型轉換?
分析:
類型轉換聽起來可能有點寬泛,但這道題明確給出了回答的范圍。
建議回復:
1. 強制類型轉換: 明確調用內置函數,強制把一種類型的值轉換為另一種類型。強制類型轉換主要有:Boolean、Number、String、parseInt、parseFloat
2. 隱式類型轉換: 在使用算術運算符時,運算符兩邊的數據類型可以是任意的,比如,一個字符串可以和數字相加。之所以不同的數據類型之間可以做運算,是因為 JavaScript 引擎在運算之前會悄悄的把他們進行了隱式類型轉換。隱式類型轉換主要有:+、 主站蜘蛛池模板: 安达市| 那曲县| 镇雄县| 那曲县| 吐鲁番市| 东至县| 东明县| 栖霞市| 抚顺市| 临猗县| 西宁市| 方正县| 阿坝县| 湖州市| 南华县| 德庆县| 通许县| 上林县| 子长县| 武隆县| 含山县| 宁海县| 滦平县| 通江县| 江孜县| 吉首市| 古田县| 迭部县| 开鲁县| 宁阳县| 吴忠市| 哈尔滨市| 永新县| 永福县| 桂东县| 罗平县| 资阳市| 竹北市| 乐安县| 崇州市| 子长县|