摘要:看如下對象定義這樣能正常調用下面的調用會出錯因為,指向已經改變,正確的方式如下所有函數都有其特殊的變量,如下面的調用會產生一個錯誤解決方案一將保存在不同的變量中解決方案二利用的第二個參數,它可以給指定一個值
看如下對象定義:
"use strict" var jane = { name : ‘Jane’, display : function(){ retrun "Person named " + this.name; } };這樣能正常調用
下面的調用會出錯:jane.display();
因為,this指向已經改變,正確的方式如下:var func = jane.display;
func()
TypeError: Cannot read property "name" of undefined
所有函數都有其特殊的this變量,如下面的forEachvar func2 = jane.display.bind(jane);
func2()
"Penson named Jane"
var jane = { name : "Jane", friends: ["Tarzan", "Cheeta"], sayHiToFriends: function(){ "use strict"; this.friends.forEach(function(friend) { // "this" is undefined here console.log(this.name + " says hi to "+ friend); }); } }調用sayHiToFriends會產生一個錯誤:
解決方案一:將this保存在不同的變量中jane.sayHiToFriends()
TypeError: Cannot read property "name" of undefined
var jane = { name : "Jane", friends: ["Tarzan", "Cheeta"], sayHiToFriends: function(){ "use strict"; var that = this; this.friends.forEach(function(friend) { console.log(that.name + " says hi to "+ friend); }); } }解決方案二:利用forEach的第二個參數,它可以給this指定一個值
var jane = { name : "Jane", friends: ["Tarzan", "Cheeta"], sayHiToFriends: function(){ "use strict"; this.friends.forEach(function(friend) { console.log(this.name + " says hi to "+ friend); }, this); } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/79073.html
摘要:要達到想要的效果正確的做法是即用來產生一個立即作用域,保證回調函數執行的時候最近的原型作用域的就是當時循環的。判斷數組中是否存在滿足條件的項,只要有一項滿足條件,就會返回。 之前常常因為不注意,習慣用寫PHP或者Java的方式來寫nodejs,產生了了一些錯誤,這里總結一些小小的trick,以便于展示nodejs的不同,和平時需要注意的地方。 變量提升 var variable = g...
摘要:系列文章的人懶事多,最近翻多寫少啊。不過當我們調試我們自己的腳本的時候也會一不小心跳到這些文件中,引發額外的調試任務。 系列文章的Github Repo人懶事多,最近翻多寫少啊。原文地址這里 ‘debugger;’ 除了console.log,debugger就是另一個我很喜歡的快速調試的工具,將debugger加入代碼之后,Chrome會自動在插入它的地方停止,很像C或者Java里面...
摘要:沒有安裝全局某個項目不影響該命令的使用。該標志會安裝,忽略。這會確保開發所使用的工具及不會進入生產環境。結果就是,發布項目時,不得不審查兩個文件是否同步,防止敏感信息的泄露。確保更改默認的用戶名,作為用戶名環境變量的值。 本文轉載自:眾成翻譯譯者:文藺鏈接:http://www.zcfy.cc/article/1206原文:https://nodesource.com/blog/ele...
摘要:如果你正在尋找編程技巧,或是想了解編程界發生了哪些新鮮事那么,今天我們帶來的年最佳開發者博客列表,一定是你的菜。地址它是為數不多的印度開發者博客中,能夠提供有價值信息的博客。地址又一個專注前端開發的博客。 如果你正在尋找編程技巧,或是想了解編程界發生了哪些新鮮事?那么,今天我們帶來的 2019 年最佳開發者博客列表,一定是你的菜。這些博客將會幫助你發現新的工具,并帶給你編程技巧的啟發。...
閱讀 1635·2021-10-27 14:13
閱讀 1876·2021-10-11 10:59
閱讀 3376·2021-09-24 10:26
閱讀 1932·2019-08-30 12:48
閱讀 3044·2019-08-30 12:46
閱讀 2038·2019-08-30 11:16
閱讀 1422·2019-08-30 10:48
閱讀 2746·2019-08-29 16:54