질문 안지울테니까 답변좀 해줄 수 있을까..
var fruits = ["apple", "banana", "peach"]
console.log(...fruits)
>>> apple banana peach
console.log(...fruits[1])
>>> b a n a n a
이렇게 나오길래 ... 이게 어떻게 바뀌나요?
질문1) ...fruits 일때 이 값이
1. "apple banana peach"
2. "apple", "banana", "peach"
위 1번이랑 2번중에 어떻게 변환되는건지
질문2) ...fruits[1] 일때 왜 하나씩 띄어쓰기가 되어서 나오는건지
검색을 여러번 했지만 원하는 질문을 찾을 수 없어서 부득이하게 질문드립니다.
알고 계신 지식을 나눠 주신다면 감사하겠습니다
+관련 링크라도 달아주신다면 감사하겠습니다ㅠ
spread operator 검색
ㄱㅅㄱㅅ 바로 검색해볼게
1. 문자열도 iterable이기 때문에 스프레도 연산자로 분리될 수 이씀
2. console.log('b','a','n','a','n','a') 라고 콘솔에 찍어보면 같은 결과가 나옴. 원래 콘솔 로그쓰면 인자들 공백으로 구분해서 보여줌.
감사합니다 감사합니다
<검색 후 정리> spread operator 는 문자열을 풀어서 요소 하나하나로 전개시킬 수 있다. 그러므로 질문 1은 리스트의 요소를 풀었기 때문에 "apple" "banana" "peach" 이며 질문 2는 fruits[1]의 값을 먼저 가지고 와서 "banana" 이것을 요소로 하나하나 풀어서 "b" "a" "n" "a" "n" "a" 가 되는 것