js面試整理

2021-08-02 05:50:50 字數 1866 閱讀 7650

1.判斷基本資料型別typeof  判斷物件的型別 object.prototype.tostring.call() 

//使用 typeof bar === "object" 判斷 bar 是不是乙個物件弊端?

//使用 typeof 的判斷object弊端是顯而易見的(這種弊端同使用 instanceof):

let obj = {};

let arr = ;

console.log(typeof obj === 'object'); //true

console.log(typeof arr === 'object'); //true

console.log(typeof null === 'object'); //true

//從上面的輸出結果可知,typeof bar === "object" 並不能準確判斷 bar 就是乙個 object。可以通過 object.prototype.tostring.call(bar) === "[object object]" 來避免這種弊端:

let obj = {};

let arr = ;

console.log(object.prototype.tostring.call(obj)); //[object object]

console.log(object.prototype.tostring.call(arr)); //[object array]

console.log(object.prototype.tostring.call(null)); //[object null]

2.即時執行函式  iife 

(function())();

console.log(b); //3 全域性變數

console.log(a); //undefined

for(var i = 0; i < 5; i++) , 1000);

}//上面的輸出並不是你以為的0,1,2,3,4,而輸出的全部是5,這時 iife 就能有用了:

for(var i = 0; i < 5; i++) , 1000);

})(i)

}

3

.對於 return 、break、continue 等語句,如果後面緊跟換行,後面一定要加分號;

function foo1();}

function foo2();}

console.log(foo1());

console.log(foo2());//undefined

4.閉包能夠訪問外部作用域的變數和引數

(function(x) )(2)

})(1); //1

5.物件呼叫

var hero = 

};var stolesecretidentity = hero.getsecretidentity;

console.log(stolesecretidentity);

console.log(hero.getsecretidentity());

// 將 getsecretidentity 賦給 stolesecretidentity,等價於定義了 stolesecretidentity 函式:

// var stolesecretidentity = function ()

// stolesecretidentity

// 第二個是呼叫物件的方法,輸出 john doe。

整理 js經典小面試題

var str abcoefoxyozzopp var index str.indexof o 宣告變數,並且進行第一次查詢 var sum 記錄位置 var i 0 記錄次數 while index 1 console.log sum,i 處 var str abcoefoxyozzopp var...

面試整理 一)

1.如何理解物件導向的思想?物件導向是為了解決系統的可維護性,可擴充套件性,可重用性,我們再進一步思考,物件導向為什麼能解決系統的可維護性,可擴充套件性,可重用性?物件導向產生的歷史原因有下面兩點 1 計算機是幫助人們解決問題的,然而計算機終究是個機器,他只會按照人所寫的 一步一步的執行下去,最終得...

面試整理 61 70

容器內每個為之所儲存的元素個數不同。list 是collection型別,每個位置只有乙個元素。map型別,持有 key value 對 ps 下面的說法 list是儲存單列資料的結合,map是儲存 鍵和值的雙列資料的集合 list 是有序的,允許重複 map 是無序的,鍵是不能重複的,值可以重複 ...