반응형 코딩/Javascript (34) 썸네일형 리스트형 자바스크립트 - 특정 문자의 정숫값 확인 방법 (charCodeAt() 함수) 가끔 특정 문자를 나타내는 정숫값이 필요할 때가 있다. 그럴 때 charCodeAt() 함수를 쓰면 된다. const str = 'abc'; console.log(str.charCodeAt(0)); // 97 console.log(str.charCodeAt(1)); // 98 console.log(str.charCodeAt(2)); // 99 charCodeAt()라는 함수에 인덱스를 인자로 넣어, 특정 문자의 정숫값을 반환한다. const str = 'abc'; console.log(str.charCodeAt()); // 97 만약 charCodeAt() 함수에 아무런 인자 없이 실행할 시, String의 첫 문자의 정숫값을 반환한다. const str = 'abc'; console.log(str.ch.. 자바스크립트 - String에서 특정 문자 찾기 (charAt() 함수) const str = 'hello world'; console.log(str.charAt(4)); // o console.log(str[4]); // o 'hello world'이라는 String에서 5번째 문자를 찾으려고 str.charAt(4)라고 실행했다. str[4]로도 동일한 결과가 나온다 왜나하면 String도 Array의 한 종류이기 때문에 대괄호로 특정 값 접근이 가능하다. str[] VS str.charAt() 차이점 1 const arr = ['1', '2', '3']; const obj = { name: 'John', age: 12 }; console.log(arr.charAt(1)) // TypeError: arr.charAt is not a function console.log(o.. 자바스크립트 - String 대문자 & 소문자로 변환하기 (toUpperCase() & toLowerCase() 함수) 대문자로 변환하기 const str = 'hello WORLD'; console.log(str); // hello WORLD console.log(str.toUpperCase()); // HELLO WORLD toUpperCase() 함수를 사용하여, String 전체를 대문자로 변환. 소문자로 변환하기 const str = 'hello WORLD'; console.log(str); // hello WORLD console.log(str.toLowerCase()); // hello world toLowerCase() 함수를 사용하여, String 전체를 소문자로 변환. 자바스크립트 - String 표현 시 " (큰 따옴표), ' (작은 따옴표), ` (억음 부호) 공통점 & 차이점 셋 부호의 공통점 1 console.log("hello world"); // hello world console.log('hello world'); // hello world console.log(`hello world`); // hello world 큰따옴표("), 작은따옴표('), 억음 부호(`) 셋 다 String 표현이 가능하다. 셋 부호의 공통점 2 console.log("'hello' `world`"); // 'hello' `world` console.log('"hello" `world`'); // "hello" `world` console.log(`"hello" 'world'`); // "hello" 'world' String 표현 시, 표현한 부호 문자 외 다른 부호 문자 사용 가능하다. .. 자바스크립트 - Boolean false 값 리스트 Boolean은 true 혹은 false 값을 가지는 데이터 타입이다. 변수를 Boolean()이라는 함수에 넣으면 변수의 boolean 값을 얻을 수 있다. 아래와 같이 변수의 값이 있는 경우, 대부분 true로 변환된다. let name = 'John'; console.log(Boolean(name)); // true 다만, 변수의 값이 아래와 같은 값일 경우 false로 변환된다. (주의: 숫자 -0 제외하고, 모든 음수는 true로 변환된다, 예: -10의 boolean 값은 true) 값 값의 Boolean 값 0 false -0 false "" false false false null false NaN false undefined false 자바스크립트 - var과 let 차이 자바스크립트에서 변수 정의 시, 변수 이름 앞에 var혹은 let 키워드를 쓴다 (const도 쓰지만 상수 할당할 때만 쓴다). 예시 var name = 'John' let name = 'John' var과 let 차이 1번째 var는 변수 재 선언이 가능. let는 변수 재 선언이 불가능. var의 경우 var name = 'John'; var name = 'Doe'; let의 경우 let name = 'John'; let name = 'Doe'; // SyntaxError: Identifier 'name' has already been declared var과 let 차이 2번째 var는 호이스팅(hoisting)이 가능하다는 것이다 (호이스팅 참조). let는 호이스팅 불가능. var의 경우 con.. 자바스크립트 - 세미콜론(;) 사용 vs 미 사용 차이 C언어나 자바와 달리 자바스크립트 코드 끝 줄마다 세미콜론(;)이 없어도 에러가 나지 않는다. 예시 console.log('hello world') 그 이유는 자바스크립트 파일 실행 시, ASI(Automatic Semicolon Insertion) 즉 세미콜론 자동 삽입이라는 기능 때문에 컴파일러가 줄의 끝이 어디인지 대략 계산해서 자동으로 세미콜론을 삽입한다. 하지만 컴파일러가 개발자의 코드를 완전히 이해하지 못하기 때문에 에러나 버그가 일어난다 예시 let a = 0 let b = 1 + a (10).toString() 결과 왜냐하면 컴파일러는 let a = 0 let b = 1 + a(10).toString() 이렇게 이해하고 a가 함수라고 착각해서 에러가 나는 것이다. 만약 세미콜론을 삽입한다면.. 자바스크립트 - Hoisting(호이스팅) & TDZ 쉬운 설명 호이스팅이란 자바스크립트 파일 실행 시, 변수와 함수가 마치 최상단에 올려진 후 파일이 실행되는것을 말한다. 실제로는 변수와 함수가 파일 최상단에 올려지는건 아니고 변수와 함수가 먼저 메모리에 할당되기 때문이다 이때 호이스팅된 var로 선언한 변수의 값은 undefined로 초기화 한다 아래 코드는 에러가 없다 console.log(name); // undefined var name = 'John'; 왜냐하면 자바스크립트 엔진이 아래와 같은 코드로 인식하고 실행하기 때문이다 var name; console.log(name); // undefined name = 'John'; 함수도 마찬가지다 아래 코드는 함수를 정상적으로 실행시킨다 print('hello'); // "hello" function prin.. 이전 1 2 3 4 5 다음