Re: [問題] 練習javascript的時候 遇到困難了(物件)
故事是這樣發生的..
首先某人找到了一個可以附加給武器 b 火焰屬性的魔法書 B
window.B = function(){
this.b = function(){
console.log( 'fire ball!!!' ) ;
}
}
接著某人手上有把武器 b 帶有水屬性的攻擊
window.b = function()
{
console.log( 'water atteck!!!!' ) ;
}
接著某人使用了這個魔法書
window.B();
讓我們來偷看一下到底怎麼施加的秘密!
window.B = function(){
this.b = function(){ // this 就是 window
console.log( 'fire ball!!!' ) ;
}
}
並且拿出來練刀, 然後心想喔! 早知道就換成火焰!
window.b(); // fire ball!!!!
所以某人到底是.....請按\文字模式
------------------------------------------------------------
套句程式說的話
"javascript 的 function 不在乎原先宣告的地方,他在乎的是誰使用他"
這邊從頭到尾都是 window 在使用 B 這個 function, 裡所當然的就是更換 window.b
的內容
window 就是瀏覽器會自動幫你產生的物件, 當你已為你在使用全域變數時
其實都是 window.global = global function 加到這個人身上.
---------------------------------------------------------------
Q & A 現在換你了!( 請把文字模式切回來避免看到答案 )
如果有個人 tank 的武器是風屬性他想要帥器的火焰屬性, 請問要怎麼換?
在這邊我先幫你建一小段
var tank = {}; // 首先產生 tank 這個人
tank.b = function(){ console.log("wind attack!!!") }; // tank 拿到了風屬性的武器
tank.b(); // tank 發出攻擊 wind attack!!!
他覺得這超不 cool.......我想換成火焰, 請利用剛剛的程式碼幫他換一下
Ans :
tank.B = B // 他跟 window 要了這個捲軸
tank.B(); // 它使用了這個捲軸
tank.b(); // 火焰球!!!!!
他現在覺得超酷的! 是不是!!
--
╔═══╗
║fw.fly║
╚═══╝http://www.wretch.cc/blog/fwfly116
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.252.91.115
※ 編輯: fwfly 來自: 111.252.91.115 (03/23 09:17)
推
03/23 09:45, , 1F
03/23 09:45, 1F
推
03/23 10:59, , 2F
03/23 10:59, 2F
推
03/23 12:03, , 3F
03/23 12:03, 3F
推
03/23 14:48, , 4F
03/23 14:48, 4F
推
03/25 10:13, , 5F
03/25 10:13, 5F
推
03/25 17:07, , 6F
03/25 17:07, 6F
推
03/28 21:29, , 7F
03/28 21:29, 7F
推
03/31 11:00, , 8F
03/31 11:00, 8F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 3 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章