1樓:粽子
1、例1
var a=10;
function test()
test();
第乙個alert(a),a變數提公升之後,賦值100,之後的整個test作用域裡面區域性變數a都是100;
第二個alter(this.a),牢記this指向原則,不看定義,看呼叫。這裡是直接呼叫,this指向window;
第三個alert(a),同第乙個。
2、例2
var a=10;
function test()
test();
1、第乙個alert(a),test作用域沒有區域性變數a,沿著原型鏈向上找到window下面的全域性變數a,
a的值被修改為100。
2、第二個alert(a),參考例1的this指向。
關於this的指向問題。
1) 函式作為物件的方法被呼叫:this指向該物件。
2) 函式直接呼叫:this指向全域性物件(window)。
3) 函式作為建構函式被呼叫:指向例項化後的物件。
2樓:
變數提公升啊。
執行環境你得理解,作用域鏈也得理解。
test其實是window的屬性,所以this指向window,全域性變數宣告都是window的屬性。
JS 中為什麼 Function constructor Function?
修遠兮 看規範就行了 Function.constructor 規定是 Function 這玩意在 Table 8 Well Known Intrinsic Objects 裡就是全域性的 Function 方應杭 因為所有函式都是 Function 的例項 包括函式 Function 自身 底層實...
為什麼能用js寫的最終都會用js寫呢?
FEFF01 應該是能直接用JS描述的都將會有語法級別的支援由JS描述,例如這個架子 https 天天寫js,真沒發現js有這麼大魔力。js其實是一門非常醜陋的語言,語法太隨意了,寫起來也不怎麼簡潔。python看起來是真的爽,尤其是看別人寫爬蟲,真的爽。不過不喜歡寫後端,還是繼續寫js。 mark...
為什麼我們要文化輸出?
青春未死 欲精進,欲求不滿。你說的不對哦 如果一種文化真的能永垂不朽歷久彌新亦或是像你說的那樣那麼好的話呢。那麼它是絕不需要任何強調文化創新的措施或者行為的。且你的理想化影響了你的主觀意識和想法故你的這一段思想不夠客觀不好。所以導致你希望一種文化創新,這是一種人為行為,就像拔苗助長一樣,並不推薦也缺...