Programing Language/JS & TS

타입스크립트 스프레드 연산자, 나머지 매개변수(...), 언더스코어(_)

칼쵸쵸 2024. 3. 21. 15:28

 

TypeScript에서 .., ..., _ 같은 기호들은 각각 다른 용도로 사용됩니다. 여기서 ..는 TypeScript 문법에 직접적으로 해당하는 기호가 아니지만, ... (스프레드 연산자 또는 나머지 매개변수)와 _ (일반적으로 무시되는 변수 또는 속성을 나타내는 데 사용)는 TypeScript 및 JavaScript에서 중요한 역할을 합니다.

 

... (스프레드 연산자 또는 나머지 매개변수)

  • 스프레드 연산자 (Spread Operator): 배열이나 객체의 모든 요소를 개별 요소로 확장하거나, 함수 호출 시 인자 리스트로 전개하는 데 사용됩니다. 배열 또는 객체 리터럴 내부에서 사용할 수 있습니다.
let numbers = [1, 2, 3];
let moreNumbers = [...numbers, 4, 5]; // [1, 2, 3, 4, 5]

function sum(x, y, z) {
  return x + y + z;
}
let args = [0, 1, 2];
sum(...args); // args 배열의 각 요소를 개별 인자로 전달

 

  • 나머지 매개변수 (Rest Parameters): 함수의 매개변수 목록에서 사용되며, 호출 시 전달된 인수들을 배열로 받습니다. 나머지 매개변수는 항상 함수 선언의 마지막 매개변수여야 합니다.
function concatenateStrings(...strings: string[]) {
  return strings.join('');
}
concatenateStrings("hello", "world", "!"); // "helloworld!"

 

_ (언더스코어)

  • TypeScript에서 _는 특별한 의미를 내장하고 있지 않습니다. 하지만, JavaScript 또는 TypeScript 커뮤니티에서 관례적으로 사용되며, 주로 사용하지 않는 변수, 무시할 매개변수, 또는 특정 라이브러리(예: Lodash)에서 사용됩니다.
// 무시할 매개변수 예시
[1, 2, 3].map((_, index) => index * 2); // 결과: [0, 2, 4]

 

  • 이 예에서 _는 배열의 각 요소 값을 무시하고, 인덱스만 사용하여 새 배열을 생성합니다.
  • 또한, _는 Lodash와 같은 라이브러리의 전통적인 별칭으로도 사용됩니다.
import _ from 'lodash';
_.isEmpty({}); // true

 

'Programing Language > JS & TS' 카테고리의 다른 글

RxJS 파이프라인 연산자  (1) 2024.03.24
RxJS 설명과 Observable 예제  (1) 2024.03.24
TypeScript 자료형  (0) 2023.03.23