[ruby] 루비 배열을 함수 인수로 변환
배열이 있다고합시다. 배열을 함수에 전달하고 싶습니다. 그러나 함수에는 두 개의 인수가 필요합니다. 즉석에서 배열을 2 개의 인수로 변환하는 방법이 있습니까? 예를 들면 :
a = [0,1,2,3,4]
b = [2,3]
a.slice(b)
Ruby에서 오류가 발생합니다. 내가 입력 할 필요가 a.slice(b[0],b[1])
내가 같이 더 우아한 뭔가를 찾고 있어요 a.slice(foo.bar(b))
감사합니다.
답변
(또는 “splat”) 연산자 Array
를 사용하여를 인수 목록으로 변환 할 수 있습니다 *
.
a = [0, 1, 2, 3, 4] # => [0, 1, 2, 3, 4]
b = [2, 3] # => [2, 3]
a.slice(*b) # => [2, 3, 4]
참고:
답변
이것을 사용하십시오
a.slice(*b)
표시 연산자라고합니다.