to_sym
方法有什麼作用?它是幹什麼用的?Ruby on Rails'method'to_sym'是做什麼的?
回答
to_sym
將字符串轉換爲符號。例如,"a".to_sym
變爲:a
。
它不是特定於Rails;香草紅寶石也有。
它看起來像在某些版本的Ruby中,符號也可以轉換爲Fixnum以及從Fixnum轉換。但來自ruby-lang.org的來自Ruby 1.9.2-p0的irb
不允許這樣做,除非您將自己的to_sym
方法添加到Fixnum。我不確定Rails是否會這樣做,但在任何情況下它都不是很有用。
如果您在代碼中使用to_sym,請注意!你可能有韭菜。符號永遠不會被ruby分配。 – fotanus 2013-02-01 17:03:50
@fotanus我認爲你的意思是記憶**泄漏**,而不是某種蔬菜:http://en.wikipedia.org/wiki/Leek – 2013-07-04 03:27:48
你好@cHao,謝謝你的回答。你能否告訴我爲什麼'.to_sym!'(用'!')不起作用。我已經在這個ideone中使用它:http://ideone.com/D7dZNz,它似乎並沒有工作。謝謝! – 2014-10-09 07:50:27
下調這個問題有點苛刻,除非它是重複的。 – 2010-10-31 22:58:23