Ruby 从数组中的自身获取数组参数 Class

Ruby get array parameter from self in Array Class

describe Array do
 describe "#square" do
   it "does nothing to an empty array" do
      expect([].square).to eq([])
   end

   it "returns a new array containing the squares of each element" do
      expect([1,2,3].square).to eq([1,4,9])
   end
 end
end

在这段代码中,我想获取参数“[1,2,3]”。

class Array
    def square
        self
    end
end

在class数组中,如何使用'self'得到[1,2,3]?

您按原样返回 self,未更改,这就是您获得 [1,2,3] 的方式。你已经得到了你所需要的。接下来是用它做点什么:

class Array
  def square
    map { |v| v ** 2 }
  end
end

map 方法将一个数组转换为另一个数组。这是一个隐含的 self.map.