我正在嘗試了解 JavaScript 詞法范圍和閉包。我使用 Node.js 運行了這個示例,然后在瀏覽器中得到了 2 個不同的輸出。測試chrome Version 80.0.3987.149 (Official Build) (64-bit)和Node v12.16.1var obj1 = { name: "Pulsar", bike: function() { console.log(this.name); } } var obj2 = { name: "Gixxer", bike: obj1.bike }; var name = "Ninja"; var bike = obj1.bike; bike(); // "Ninja" obj1.bike(); // "Pulsar" obj2.bike(); // "Gixxer"這段代碼在Vanilla JavaScript. 輸出是:Ninja PulserGixxer在NodeJS輸出中是:undefinedPulsarGixxer有人可以解釋一下嗎?
這個關鍵字在 NodeJS 和 Vanila JavaScript 之間的作用不同
海綿寶寶撒
2022-06-16 10:07:59