Что является функцией в Ruby, который позволяет “p *1.. 10” для распечатывания номеров 1-10?

  try this way     
  handleselectedFile = event => {
     this.setState({

      selectedFile: event.target.files[0],
      loaded: 0,
      fileName: event.target.files[0].name
    },(prevState, props) =>(console.log(prevState,props)))
  };
5
задан Andrew Grimm 12 May 2011 в 23:55
поделиться

2 ответа

Это - "нащельная рейка" оператор. Это может использоваться, чтобы взорвать массивы и диапазоны и собрать значения во время присвоения.

Здесь значения в присвоении собраны:

a, *b = 1,2,3,4

=> a = 1
   b = [2,3,4]

В этом примере значения во внутреннем массиве ( [3,4] один), взорван и собран к содержанию массива:

a = [1,2, *[3,4]]

=> a = [1,2,3,4]

Можно определить функции, которые собирают аргументы в массив:

def foo(*args)
  p args
end

foo(1,2,"three",4)

=> [1,2,"three",4]
13
ответ дан 18 December 2019 в 07:32
поделиться

Хорошо:

  • require pp импортирует довольно печатающую функциональность
  • p симпатичный метод печати с varargs, который структурные распечатки программы каждый аргумент
  • * означает, "разворачивают аргумент в varargs" вместо того, чтобы рассматривать его как отдельный аргумент
  • 1.. 10 синтаксис последовательности диапазона в Ruby

Это объясняет это соответственно? В противном случае уточните, на котором бит сбивает с толку.

8
ответ дан 18 December 2019 в 07:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: