목록개발자 되는 법.../모던 js... (5)
나 개발자 할래요
숫자형으로 변환undefined → NaNnull → 0true / false→ 1 / 0string→ 0 / number / NaN 💡문자열의 처음과 끝 공백이 제거됨. 공백 제거 후 남아있는 문자열이 없다면 0 , 그렇지 않다면 문자열에서 숫자를 읽음. 변환에 실패하면 NaN alert( Number(" 123 ") ); // 123alert( Number("123z") ); // NaN ("z"를 숫자로 변환하는 데 실패함)alert( Number(true) ); // 1alert( Number(false) ); // 0 불린형으로 변환0 / "" / null / undefined / NaN→ false그 외의 값 → true 💡"0"과 " "같은 공백은 불린형으로 변환 시 true객체(..
Number: 숫자를 표현합니다.정수, 소수, 그리고 Infinity, Infinity, NaN 등을 포함합니다.let num = 42; // 정수let pi = 3.14; // 소수let invalid = "hello" * 2; // NaNString: 텍스트를 나타냅니다.작은 따옴표, 큰 따옴표, 또는 백틱으로 감싸서 사용합니다.let str = "Hello, World!";let template = `Number is ${num}`;Boolean: 참과 거짓, 즉 true와 false를 표현합니다.let isTrue = true;let isFalse = false;Undefined: 변수를 선언했지만 값을 할당하지 않은 상태입니다.let a;console.log(a); // undefinedNull..

var, let, const1. varES5 이전부터 사용된 변수 선언 방식 특징함수 스코프(Function Scope)재선언 가능재할당 가능변수 호이스팅(Variable Hoisting)2. letES6에서 도입된 변수 선언 방식 특징블록 스코프(Block Scope)재선언 불가능재할당 가능변수 호이스팅(Variable Hoisting)3. constES6에서 도입된 상수 선언 방식, 값을 변경할 수 없는 변수특징블록 스코프(Block Scope)재할당 불가능재선언 불가능변수 호이스팅(Variable Hoisting)참조형 데이터의 불변성 아님호이스팅(Hoisting)선언이 코드 상단으로 끌어올려지는 현상var는 변수를 선언과 동시에 undefined로 초기화함console.log(greeter); /..
JavaScript에서 코드 실행을 더 엄격하게 만드는 옵션"use strict" 설계 당시 유연하게 만들어져서 실수를 허용하는 경우가 많아짐 → 예상치 못한 버그 초래실수나 잠재적인 버그를 방지하도록 도와주는 "안전 모드" 선언되지 않은 변수 사용 방지"use strict";x = 10; // 에러 발생! (ReferenceError: x is not defined)let x = 10; // 정상 작동 어디에 사용해야 할까?모듈화된 코드에서는 기본적으로 엄격 모드가 적용되므로 추가할 필요 없음?레거시 코드를 작성하거나 수정할 때 실수를 방지하고 더 안전하게 만들고 싶을 때 유용 레거시 코드(Legacy Code)소프트웨어 개발에서 흔히 사용하는 용어로, 오래되었거나 기존 시스템에 속한 코드 현재 작동 ..
세미콜론서로 다른 문 구분 세미콜론 자동 삽입(automatic semicolon insertion)대부분의 경우,줄바꿈 = ‘암시적’ 세미콜론 줄 바꿈이 세미콜론을 의미하지 않는 경우alert(3 +1+ 2);"+" 로 끝나면, 그 줄은 '불완전한 표현식’이므로 세미콜론이 필요하지 않다는 걸 직감 → 정상 작동 추정하지 ‘못하는’ 경우alert("제대로 동작합니다")[1,2].forEach(alert)대괄호 [...]앞에는 세미콜론이 있다고 가정하지 않기 때문 → 에러 발생