Ruby: Inject
hash = {}arr.each do |num| hash[num] = numend# => {“1″=>”1”, “2”=>”2″, “3”=>”3″} ถ้าเรานำ inject เข้ามาใช้ result = arr.inject({}) do |hash, num| hash[num] = num hashend# => {“1″=>”1”, “2”=>”2″, “3”=>”3″} arr.inject({}) จะเป็นการ initial ค่าไว้ว่าให้เริ่มต้นเป็นอะไร ทำให้เราไม่ต้องประกาศ hash เปล่าไว้ก่อน อีกท่าหนึ่งเราสามารถใช้ each_with_object ได้เหมือนกันขึ้นอยู่กับสถานการณ์ arr.each_with_object({}) { |num, hash| hash[num] = num }# => {“1″=>”1”, “2”=>”2″, “3”=>”3″} ในตัวอย่างด้านบน จะเป็นการInject hash เข้าไป หรือจะเป็นการหาค่าผลรวม result […]