본문 바로가기

Front end46

[TypeScript] unknown, void, never 타입에 대해서 알아보자 TS에서는 JS에서만 있는 타입 뿐만 아니라 TS만의 타입도 가지고 있다. 이번에 포스팅 하는 3가지 타입이 그 예시이다. 시작하기에 앞서 간단히 이 타입에 대한 설명을 하자면 unknown은 모든 타입이 될 수 있는 타입이고, void는 아무것도 반환하지 않는 함수에 사용된다. 마지막으로 never는 절대 반환하지 않는 함수에서 사용된다는데 void랑 뭐가 다른지 잘 모르겠다. 강의의 예시로는 에러를 던지는 함수를 보여줬는데 조금 더 생각을 해봐야겠다..  + 지피티한테 물어봤는데 void는 아무것도 반환하지 않는 메서드 즉, 콘솔출력 또는 이벤트 핸들러에서 주로 사용된다고 하고 never는 정상적으로 종료되지 않는 함수 즉 무한루프, 에러 던지기에 주로 사용된다고 한다. unknown어떠한 타입도 될.. 2024. 10. 26.
[TypeScript] Readonly , Tuple에 대해서 알아보자 ReadOnlyReadonly 는 말 그대로 읽기 전용 이라는 키워드 이다. 예를 들어서 어떤 배열을 생성할 때에만 값을 받고 해당 배열을 수정할 수 없게 만들고 싶을 때 사용한다.  또한 readonly 키워드는 배열 및 튜플에서만 사용 가능하다. 사용법은 아래와 같다.let arr : readonly number[] = [1, 2, 3]arr.push(4) //error 이렇게 만들어진 arr 배열은 추가, 삭제, 업데이트 모두 불가하다.  Tuple파이썬을 공부하며 리스트와 튜플의 차이는 가변성과 불변성으로 공부했었다. 타입스크립트에서도 비슷하지만 "타입"을 바꿀 수 없다는 점이 다르다. 먼저 튜플을 선언할 때에는 타입의 순서를 선언한다. let a : [number, string, number] .. 2024. 10. 26.
[TypeScript] 변수와 타입, 함수 생성 서론TypeScript는 JS에서 발생하는 에러를 대비하기 위해 만들어진 언어이다. 자바스크립트에서는 개발자를 위한 에러를 내지 않는다. 계산 식이 잘못 되었더라도 어떻게든 수행한다. 하지만 그로인한 결과값은 원하는 값이 아닌 경우가 많다. 예를 들어 JS에서는 [1, 2,3 ,4] + true 를 실행하면 오류없이 실행이 된다. console.log([1,2,3,4] + true)// result1,2,3,4true 하지만 위 결과는 원하는 결과 값이 아니다. 위와 같은 수식은 옳은 수식이 아니므로 실행 전 개발자에게 알려주어야 한다. 다음은 또 다른 예시이다. function div(val1, val2) { return (val1 / val2)}console.log(div('안녕?'))//res.. 2024. 10. 24.
[SCSS] 파일 구조와 모듈화 서론SCSS를 사용하는 가장 큰 이유이자 핵심이다. 컴포넌트를 재사용하고 컴포넌트끼리의 결합을 통해 하나의 큰 시스템을 구축한다. html과 css만으로는 그런 방법을 사용할 수 없는줄 알았는데 SCSS를 이용하면 객체지향적으로 코드 작성이 가능하다.파일 구조base/components/layout/pages/themes/abstracts/vendors/main.scss이 형식은 SCSS 뿐만이 아니라 리액트나 뷰와 같은 다른 라이브러리에서도 일반적으로 사용한다. 반드시 이 구조를 사용해야 한다는 것은 아니지만 일반적으로 많이 사용하는 구조이니 SCSS에서도 사용하면 쉽게 적용 가능하다.  폴더별 예시 파일 @use이제 해당 폴더에서 컴포넌트를 만든 후 다른 컴포넌트에서 사용하기 위한 키워드는 @use .. 2024. 10. 23.
[SCSS] mixin 사용법 서론mixin과 function은 SCSS를 모듈화 하기 위한 가장 큰 요소라고 생각된다. 잘못 사용하면 정말 가독성이 떨어지고 어려울 수 있지만, 잘만 사용한다면 코드를 훨씬 간결하게 유지할 수 있을 것 같다. 유지 보수 면에서도 훨씬 이점이 많을 거라 생각된다. mixin이란?: 함수와 유사한 개념 단, 함수와 동일하지 않음 (리턴값이 존재 X) 사용법mixin 을 선언할 때에는 @mixin 키워드를 사용한다.사용할 때에는 @include 키워드를 사용한다. 예제 (매개변수가 없는 믹스인)// 매개변수가 없는 믹스인// 선언부@mixin resetList() { margin: 0; padding: 0; list-style: none;}// 사용부ul { background-color: yell.. 2024. 10. 22.
[SCSS] 주석, 변수, 보간법 국비 교육을 들으며 Saas를 처음 배워보았다. 처음 SCSS를 사용해보고 나서 든 생각은 정말 프로그래밍 언어와 다를게 없다고 생각했다. 파일 관리를 모듈 단위로 한다는 점에서 리액트와 뷰랑 사용법이 유사하다고 생각이 드는데 이렇게 코드를 작성하면 바닐라 JS에서도 라이브러리를 쓰듯 코드를 작성하는게 가능할 것 같다는 생각이 들었다.  다음으로는 코드의 가독성이 너무 좋다. 또 if 의 사용으로 인해 정말 프로그래밍 언어처럼 코드를 작성할 수도 있다. CSS에서 해당 기능을 사용할 수 있다는게 신기했다.  그런데 해외 코드를 읽으며 SCSS는 정말 많이 봤지만 국내에서는 인지도가 조금 떨어지는 것 같기도 하다. 리액트나 뷰는 JS 를 쓰는 거의 모든 기업들이 사용을 하고 있지만, SCSS는 지원 자격에.. 2024. 10. 22.