一道題你能夠看出來多少知識點

2021-10-11 17:19:59 字數 1022 閱讀 7683

這道題考了原型鏈、作用域、變數提公升,函式宣告與函式表示式、this指向

function

foo();

return

this;}

foo.

getname

=function()

;foo.prototype.

getname

=function()

;getname

=function()

;function

getname()

foo.

getname()

;getname()

;foo()

.getname()

;getname()

; foo.

getname()

;new

foo().

getname()

;

答案:2,4,1,1,2,3

解答:

foo.

getname()

;// 2 函式本身就有乙個屬性getname,雖然原型鏈上也有,但除非沒有屬性 才去取原型鏈上的

getname()

;// 4,由於函式宣告被提前了,表示式在後,宣告被覆蓋了,所以輸出了4

/** * foo()函式返回this,外部this指向window,由於內部的getname變數,沒有宣告let或者var,

* 會暴露為乙個全域性物件,所以返回了1

*/foo()

.getname()

;// 1

getname()

;//1 前面的函式執行,暴露了乙個全域性物件,所以為1

foo.

getname()

;//2 直接獲取 foo的屬性getname()

newfoo()

.getname()

;//3 new foo() 構造了乙個例項物件,並繼承了它原型鏈上的物件方法

一道考察陣列知識的程式設計題

今天先貼 下次補上整體思路與後續優化 題目 假設有乙個集合 foo bar hello world 求這個集合裡單詞組合起來的所有不同的結果。1 let arr foo bar hello world 2 str 3 newarr 4 results 56 for let i 0 i 99 i jo...

一道題 測試你對多型的了解?

題目 根據題目,寫出自己的答案 多型練習 author public class moremodule class a public string show a obj class b extends a public string show a obj class c extends b clas...

switch語句(有一道你錯過的題)

switch語句也是一種分支語句。常常用於多分支的情況。比如輸入1,輸出星期一 輸入2,輸出星期二 輸入3,輸出星期三 輸入4,輸出星期四 輸入5,輸出星期五 輸入6,輸出星期六 輸入7,輸出星期日 那我沒寫成 if else if else if 的形式太複雜,那我們就得有不一樣的語法形式。這就是...