看板 [ Ruby ]
討論串[無用] .call()可省略call
共 6 篇文章
首頁
上一頁
1
2
下一頁
尾頁

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者AIGecko (壁虎貓耳控)時間10年前 (2014/06/12 12:26), 編輯資訊
3
0
1
內容預覽:
偶然忘了打函式只打了小括號. 發現.()等同.call(). ->(){print "hello, world"}.() #=>hello, world. ->(){print "hello, world"}.call() #=>hello, world. 不只是Proc. 其他物件只要有call這
(還有160個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者aquarianboy (高 見龍)時間10年前 (2014/06/12 14:58), 編輯資訊
1
0
2
內容預覽:
講到這個,當初我在翻 Ruby Source Code 的時候有發現一段:. // 檔案:proc.c. rb_define_method(rb_cProc, "call", proc_call, -1);. rb_define_method(rb_cProc, "[]", proc_call, -
(還有270個字)

推噓3(3推 0噓 6→)留言9則,0人參與, 最新作者danny8376 (釣到一隻猴子@_@)時間10年前 (2014/06/12 17:40), 編輯資訊
0
0
1
內容預覽:
這是Ruby內部運作的概念啊. 所有東西都是運算子. 像是a+b. 實際狀況是 => a.+(b). 也就是呼叫了a當中的+這個方法去跟b處理. method(). 同樣也可以是 => method.(). 反倒概念上call是()的別名正確一點XD. 雖然在實際上也不是這樣就是XDDD. --.

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者CindyLinz (Cindy Wang)時間10年前 (2014/06/18 01:34), 編輯資訊
0
0
1
內容預覽:
好奇想問一下為什麼會把 === 也定義進去啊?. call. 很好理解, 就是對 Proc 的一個 call 的動作,. javascript 的 function 也是有這個. []. 也可以懂, 因為 [] 應該是 ruby 裡面. 唯一一個可以自由 overload 的「成對」的 operat
(還有171個字)

推噓3(3推 0噓 0→)留言3則,0人參與, 最新作者danny8376 (釣到一隻猴子@_@)時間10年前 (2014/06/18 02:57), 10年前編輯資訊
0
0
3
內容預覽:
Ruby裡的===並不是一個會被直接呼叫使用的運算子. 本身也不是跟==這種equal有直接關係的運算子. Ruby的===是case專用的內部運算子. 意義上比較接近in range/type of的感覺吧?. when放了num/string之類的就跟==一樣. when放了range 就是in
(還有449個字)
首頁
上一頁
1
2
下一頁
尾頁