[TS][JS] 객체 비 구조화 할당 (destructuring assignment)
·
Typescript
객체 비 구조화 할당( 구조 분해 할당 ) 이란? 자바스크립트에서는 객체의 구조분해 할당을 통해 더 가독성이 좋은 코드를 만들 수 있습니다. 이 편리함과 가독성이 좋은 코드라는 의미는 코드를 보며 이해하겠습니다. const user = { name:"kim", age:25, gender:"Male", university:"Seoul Unv", introduce:"hello my name is kim", } 위와 같은 객체가 있다고 가정할 때, 값들을 비구조화 할당하지 않은채 추출하겠습니다. const user = { name:"kim", age:25, gender:"Male", university:"Seoul Unv", introduce:"hello my name is kim", } console.log..
[JS][TS] 유닉스 시간에서 일반 시간으로 변환하기
·
Typescript
문제 내가 사용하는 open api 에서 최근 사용 시간 이라는 항목을 반환하는 컬럼이 존재하는데 이 컬럼이 일반 시간을 return하는게 아닌, 유닉스 타임을 return하기때문에 일반 시간으로 변환하는 작업이 필요하다. 해결방법 방법은 간단하다. 유닉스 시간을 일반 시간으로 변환하는 함수를 작성해주고 그 안에 매개변수로 유닉스 시간을 받으면 일반 시간을 return 하도록 코드 짜주면된다. 유닉스시간 -> 일반시간으로 변환 원리는 간단하다 JS 의 Date 객체에 유닉스 시간을 대입하면 자동으로 추출할 수가 있다. 해결과정 function lowerTen(num:number|string):string|any{ //lowerTen 함수. 10보다 작을시, 앞에 0 추가 if(num < 10){ num ..
Typescript(7) - Class
·
Typescript
Class TypeScript에서 클래스(Class)는 객체 지향 프로그래밍(OOP)의 핵심 개념 중 하나로, 객체를 생성하기 위한 템플릿 또는 청사진(blueprint)입니다. 클래스를 사용하여 객체의 상태와 행위를 정의하고, 해당 클래스로부터 여러 개의 객체(인스턴스)를 생성할 수 있습니다. class Car { constructor(color){ this.color = color; } start() { console.log("start"); } } const bmw = new Car("red"); 에러를 발생합니다. color라는 프로퍼티가 Car에 존재하지 않는다고 합니다. class Car { color: string; constructor(color: string){ this.color = c..
Typescript(8) - Generics
·
Typescript
이번 포스팅에서는 Typescript의 제네릭에 대해서 알아보겠습니다. 제네릭 - Generics 이란? TypeScript의 Generics(제네릭)은 타입 안정성을 유지하면서 재사용 가능한 코드를 작성할 수 있는 기능입니다. 제네릭을 사용하면 함수나 클래스를 여러 종류의 타입에 대해 동작하도록 일반화할 수 있습니다. 이를 통해 코드의 중복을 줄이고, 타입 안전성을 확보할 수 있습니다. 제네릭은 함수나 클래스의 매개변수나 반환값에 타입 변수를 사용하는 방식으로 작성됩니다. 이 타입 변수는 실제 사용될 때 구체적인 타입으로 대체됩니다. 예를 들어, 배열의 요소 타입을 유연하게 처리하기 위해 제네릭을 사용할 수 있습니다. 예제 function getSize(arr: number[] | string[]) :..
Typescript(6) - Intersection Types (교차타입)
·
Typescript
Intersection Types (교차타입) TypeScript에서 교차 타입(Intersection Type)은 여러 타입을 조합하여 하나의 타입을 생성하는 기능입니다. 교차 타입은 & 기호를 사용하여 타입을 결합합니다. 이를 통해 변수, 매개변수, 인터페이스 등에 여러 타입의 속성 및 기능을 모두 포함할 수 있습니다. interface Car{ name: string; start(): void; } interface Toy { name: string; color: string; price: number; } const toyCar: Toy & Car = { name: "benz", start(){}, color: "black", price: 10000000, } 교차 타입이란, 두개의 interfa..
Typescript(5) - 리터럴 타입과 유니온 타입
·
Typescript
이번 포스팅에서는 리터럴타입에 대해서 알아보겠습니다. Literal Type? 리터럴 타입(Literal Types)은 TypeScript에서 특정한 값을 나타내는 타입으로, 값을 문자열, 숫자, 불리언 등의 리터럴로 제한하는 기능입니다. 리터럴 타입을 사용하면 변수 또는 매개변수가 특정한 값을 가지도록 강제할 수 있으며, 이를 통해 정확한 값의 사용을 보장하고 타입 체크를 강화할 수 있습니다. const userName1 = "Bob"; let userName2 = "Tom"; const, let js에서의 변수를 지정할때 var, const, let을 사용하여 변수지정이 가능합니다. var는 오래된 JavaScript에서 사용되던 변수 선언 방식입니다. var로 선언된 변수는 함수 스코프(functi..
Typescript(4) - 함수(2)
·
Typescript
지난시간의 포스팅하던 Typescript의 함수에 대해서 더 알아보겠습니다. rest parameter js function add(...nums) { return nums.reduce((result,num) => result + num, 0) } add(1,2,3); add(1,2,3,4,5,6,7) 일반 js로 작성된 모든 매개변수를 더하는 함수입니다. rest parameter를 이용해 모든 매개변수를 배열로 가져옵니다. ts function add(...nums: number[]) { return nums.reduce((result,num) => result + num, 0) } add(1,2,3); add(1,2,3,4,5,6,7) Typescript로 변환한 함수입니다. ...nums 뒤에 :..
Typescript(3) - 함수(1)
·
Typescript
이번 포스팅에서는 함수의 타입선언에 대해 알아보겠습니다. 중요하기 때문에 두 포스팅으로 나눠서 작성하겠습니다. 함수 두 인자의 합을 반환하는 함수를 작성해보겠습니다. javascript fuction add(num1,num2){ return num1 + num2; } 일반적인 자바스크립트 문법으로 구현된 add함수입니다. num1과 num2 모두 정수로 받아올것입니다. 하지만 num1,num2 모두 타입이 정의 되지 않았기 때문에 num1,num2 에 만약 string이 들어오게 된다면 값이 이상하게 나올 것입니다. typescript로 변환 function add(num1:number,num2:number):number{ return num1 + num2; } // number (정수) 를 return..