자바스크립트

모던 자바스크립트 Deep Dive

모던 자바스크립트 Deep Dive 3일차 (데이터 타입, 연산자, 제어문)

자바스크립트에도 데이터 타입이 있다. 데이터 타입에는 원시타입(Primitive type) 과 객체타입( Object/ Reference type)이 있다. 원시타입 - 숫자 -> 정수, 실수 구분없이 하나의 숫자 타입만 존재한다. 배정밀도 64비트 부동소수점으로 해석된다. 즉 모든 수를 실수로 처리한다는 뜻이다. 3 / 2를 하면 1.5로 처리된다는 뜻이다. 숫자 타입에는 추가적으로 Infinity, -Infinity, NaN(Not a Number)가 있다. - 문자열 다른 언어와는 달리 문자열을 생성할 때 ""(큰 따옴표)와 ''(작은 따옴표) 구분 없이 사용할 수 있다. ES6에는 템플릿 리터럴이 추가되었다. 템플릿 리터럴은 멀티라인 문자열, 표현식 삽입, 태그드 템플릿의 기능을 제공한다. 템플릿..

자바스크립트

모듈에 대한 설명 (import, export, require, module.export 등등)

목차 자바스크립트로 웹사이트를 개발하다 보면 규모가 점점 커져서 파일을 분리하고 싶은 욕구가 생길 때가 종종 있습니다. 그래서 파일을 기능별로 분리시킵니다. 이럴 때 각각의 파일 하나를 모듈이라고 부릅니다. 공부를 하다보면 모듈을 내보내고 가져오는 예제를 자주 만나고는 합니다. 그런데 예제마다 가져오는 방식이 다릅니다. 그 차이는 무엇이고 모듈이란 무엇인지 알아보겠습니다. 아래 코드부터 보겠습니다. // import로 가져오는 경우도 있습니다. import {example} from 'example.js'; // require로 가져오는 경우도 있습니다. const example = require('example.js'); 이 둘의 차이가 무엇이길래 가져오는 방식이 다를까요? 이것을 알려면 우선 역사를 ..

자바스크립트

자바스크립트 문자열 앞 뒤에 원하는 길이만큼 문자 추가하기(padEnd, padStart)

목차 코딩테스트를 풀다가 어느분이 padEnd를 사용해서 해결하시는 것을 보고 공부하고 정리한 내용입니다. 처음에 그 코드를 봤을 때머리가 띵했습니다. 문자열 앞에 문자 추가하기 (padStart) (MDN 정의) 현재 문자열에 다른 문자열을 채워넣어서 주어진 길이에 만족하는 새로운 문자열을 반환합니다. 채워넣기는 대상 문자열의 시작부터 적용됩니다. String.padStart(targetLength, [,padString]) targetLength보다 String의 길이가 만약 더 길다면? -> 그냥 String이 반환됩니다. targetLength보다 작을 때만 문자열이 채워넣어집니다. padString을 안넣으면 어떻게 될까요? -> 빈 문자열이 채워넣어집니다. padString이 채워넣어지다가 문..

자바스크립트

자바스크립트 nullish 연산자 (OR 연산자와 차이점)

목차 nullish 연산자란 nullish 연산자는 자바스크립트 최신 스펙에 추가되어 브라우저에서 지원 하는지 확인하고 사용하시길 바랍니다. nullish 연산자는 간단히 말해서 값이 있는 변수를 찾을 수 있는 연산자입니다. 코드를 통해서 nullish를 사용하지 않을 때와 사용할 때의 차이점을 볼게요. const a = null; const b = 'hello nullish'; // nullish 사용 x console.log((a !== null && a !== undefined) ? a : b); // nullish 사용 console.log(a ?? b); // 결과: hello nullish 여기에서 nullish 연산자(??)는 앞에 있는 a의 값을 평가할 때 'undefined' 인지 'n..

딩코농부
'자바스크립트' 태그의 글 목록