天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

驗證javascript中Object和Function的關系的三段簡單代碼

話說在樓豬理解和實踐能力尚欠火候的時候,在這篇里曾經照搬了李戰老師不少東西寫在自己的博客里作為“知識儲備”。這一次還是不能免俗。在翻到第5章的時候,被開篇第二段話深深吸引和折服:“函數具有對象的全部特征,你完全可以把函數當對象調用。其實,函數就是對象,只不過比一般的對象多了一個括號“{}”操作符,這個操作符用來執行函數的邏輯,即函數本身還可以被調用,一般對象卻不可以被調用,除此之外完全相同”。寥寥數語,卻深刻闡釋了對象和函數的關系。下面樓豬就通過自己寫的幾段簡單代碼,論證一下Javascript內置Object和Function的關系。
  
1、Function就是Object,Object就是Function
復制代碼 代碼如下:
alert(Function instanceof Object); // true
alert(Object instanceof Function); // true

如你所看到的那樣,通過instanceof操作符,函數就是對象,對象就是函數。
2、既然1是成立的,那么Function擴展的原型方法,Object能“得到”嗎?
復制代碼 代碼如下:
alert(Object.funcMethod); // undefined
Function.prototype.funcMethod = function() {
/*some function method code here*/
}
alert(Function.funcMethod);
alert(Object.funcMethod);
alert(Function.funcMethod === Object.funcMethod); //true

你沒有看錯,我們為Function擴展的原型方法funcMethod,Object實現了神奇的“不勞而獲”。
3、既然1和2都成立,那么Object擴展的原型方法,Function能“得到”嗎?!
代碼
復制代碼 代碼如下:
alert(Function.objMethod); // undefined
Object.prototype.objMethod = function() {
/*some object method code here*/
}
alert(Object.objMethod);
alert(Function.objMethod);
alert(Function.objMethod === Object.objMethod); //true or false?

上面代碼中最后有個問號的那一行是彈出true還是false呢?賣個關子,根據樓豬通篇直白而單純的表述,你應該已經知道結果了,這里不公布答案了。
  最后,容樓豬在這里得意地自戀一下:個人認為上面這三段代碼應該比原書中驗證“函數就是對象的本質”的代碼更具有說服力。

JavaScript技術驗證javascript中Object和Function的關系的三段簡單代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 99这里只有是精品2 99这里有精品视频视频 | 国产人妻久久久精品麻豆 | 久久免费特黄毛片 | 俄罗斯性xxxx| 精品无码无人网站免费视频 | YELLOW日本动漫高清免费 | 伦理片在线线看手机版 | 国产高清亚洲日韩字幕一区 | 婷婷开心激情综合五月天 | 伊人久久大香线蕉资源 | 加勒比一本之道高清视频在线观看 | 精品人伦一区二区三区潘金莲 | 国产精品国产三级国AV在线观看 | 大胸美女洗澡扒奶衣挤奶 | 水蜜桃亚洲一二三四在线 | 国产自产第一区c国产 | 污到湿的爽文免费阅读 | 亚洲一区精品在线 | 亚洲精品在线影院 | 97人视频国产在线观看 | 丝袜美女被艹 | 成人在线观看国产 | 大胸美女洗澡扒奶衣挤奶 | 97人妻久久久精品系列A片 | georgielyall装修工 | 久久亚洲AV成人无码国产漫画 | 国产精人妻无码一区麻豆 | 在线国产视频观看 | 被黑人做的白浆直流 | 欧美乱码伦视频免费66网 | av色天堂2018在线观看 | 人妻久久久精品99系列AV | 国产交换丝雨巅峰 | 视频一区国产精戏刘婷30 | 秋霞网在线伦理影片 | 偷拍久久国产视频免费 | 大相蕉伊人狼人久草av | 在线日韩欧美一区二区三区 | 国产精品系列在线一区 | 欧美久久综合网 | 人与禽交3d动漫羞羞动漫 |