일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 한번에끝내는JavaSpring웹개발마스터초격차패키지Online강의
- 자바기초
- Spring
- javabasic
- 웹
- 한번에끝내는JavaSpring웹개발마스터초격차패키지Online
- linux
- js
- String
- 패스트캠퍼스후기
- 직장인인강
- 재택근무
- 디자인
- java기초
- 디자인패턴
- 자바
- 자바연습문제
- 데이터베이스
- ncs
- DesignPattern
- DB
- 자바기본
- java
- 패스트캠퍼스
- 패캠챌린지
- 국비
- 스프링
- 직장인자기계발
- 리눅스
- 자바예제
Archives
- Today
- Total
FIF's 코딩팩토리
[JS]스프레드 오퍼레이터 - … 연산자 본문
반응형
Spread Operator - ... 연산자
스프레드의 사전적인 뜻은 '펼치다' 정도 이다.
스프레드 오퍼레이터는 자바스크립트 표현식을 확장(펼칠 수 있는)할 수 있는 연산자 이다.
배열이나 객체에서 주로 사용하고 표현은 점3개 ... 로 한다.
아래는 사용 예이다.
array1 배열에 1,2,3 값이 있다.
array2 배열요소 안에 ...array1 이라고 하면 [1,2,3] 값을 일일이 쓸 필요 없이 사용할 수 있다.
array1를 콘솔에 출력해보면 [1,2,3,4,5] 가 나온다.
펼치다(spread)는 것은 객체 혹은 배열의 속성을 가져올 수 있다는 것을 의미한다.
const array1 = [1, 2, 3]; const array2 = [...array1, 4, 5]; console.log(array2); // Output: [1, 2, 3, 4, 5]
객체에서도 사용할 수 있는데 obj1에는 a값과 b값이 있다.
obj2에 ...obj1을 사용하면 a값과 b값을 간편하게 재사용 할 수 있다.
const obj1 = {a: 1, b: 2}; const obj2 = {...obj1, c: 3}; console.log(obj2); // Output: {a: 1, b: 2, c: 3}
배열에서 Spread
배열의
- 복사(myArray.splice())
- 추가(myArray.push())
- 연결(myArray.concat())
에 대해 메소드를 대신하여 사용할 수 있다.
복사
const colors1 = ['red', 'blue', 'black', 'yellow']; const colors2 = [...colors1]; console.log(colors1); // ['red', 'blue', 'black', 'yellow'] console.log(colors2); // ['red', 'blue', 'black', 'yellow'] console.log(colors1 === colors2); // false, colors1와 colors2은 서로 다른 배열
추가
let number1 = [1, 2, 3]; let number2 = [4, 5, 6]; number1 = [...number1, ...number2, 7, 8]; // [1, 2, 3, 4, 5, 6, 7, 8] number2 = [...number2, ...number1]; // [4, 5, 6, 1, 2, 3, 4, 5, 6, 7, 8]
객체의 Spread
추가
객체가 소유한 속성에 새로운 속성을 추가한다.
const zoo1 = { tiger: '6마리', giraffe: '2마리', rabbit: '5마리', }; const zoo2 = { ...zoo1 }; console.log(zoo1); // {tiger: '6마리', giraffe: '2마리', rabbit: '5마리'} console.log(zoo2); // {tiger: '6마리', giraffe: '2마리', rabbit: '5마리'} console.log(zoo1 === zoo2); // false, zoo1와 zoo2는 서로 다른 객체
병합
객체들을 병합한다.
const zoo1 = { lion: '3마리', monkey: '6마리', }; const zoo2 = { lion: '2마리', elephant: '4마리', }; const zoo3 = { ...zoo1, ...zoo2 }; console.log(zoo3); // {lion: '2마리', monkey: '6마리', elephant: '4마리'}
함수의 Spread
함수의 인자로 배열을 활용할 때 쓰는 Funtion.apply() 보다 간편하게 사용할 수 있습니다.
function FunctionDivision(x, y) { return x / y; } const arrayNumber = [10, 2]; // apply() console.log(FunctionDivision.apply(null, arrayNumber)); // 5 // spread syntax console.log(FunctionDivision(...arrayNumber)); // 5
반응형
'Front-End > JavaScript(자바스크립트)' 카테고리의 다른 글
[JS] 배열을 다루는 함수 (0) | 2024.06.25 |
---|---|
[JS]백틱 `` 사용 - 템플릿 리터럴 (0) | 2023.02.09 |
[JS]Ajax에 대하여 (0) | 2019.09.09 |
[JS]JavaScript 클로저(Closure) 란? (0) | 2019.08.14 |
[JS]JavaScript란? (0) | 2019.08.07 |