목록JavaScript (50)
dolog

디버깅(debugging) : 스크립트 내 에러를 검출해 제거하는 일련의 과정 (쉽게 말해서 에러를 잡는 것) 디버깅 툴(debugging tool) 디버깅을 도와주는 도구 실행 단계마다 어떤 일이 일어나는지를 코드 단위로 추적 Chrome의 개발자 도구 (1)소스(sources) 패널 ㄴ 탐색기 : 누르면 현재 사이트와 관련된 파일들이 나열된다(open sources) ㄴ 3가지 영역 ❶ 파일 탐색 영역 : 페이지를 구성하는 데 쓰인 모든 리소스를 트리 형태로 보여준다 ❷ 코드 에디터 영역 : 리소스 영역에서 선택한 파일의 소스 코드를 보여준다 소스 코드를 편집할 수도 있다 ❸ 자바스크립트 디버깅 영역 : 디버깅 관련 기능 제공 (2)콘솔(console) 개발자 도구에서 ESC를 누르면 개발자 도구 하..
let func = (arg1, arg2, …argN) => expression 인자(arg1, …argN)를 받는 함수 func 왼쪽 인수를 이용해 => 우측의 표현식을 평가하고 결과를 반환 단순하고 간결한 함수 표현이 가능하다 함수 표현식의 축약 버전 = 화살표 함수 let func = function(arg1, arg2, …argN) { return expression; } // 함수 표현식 ⬇️ let func = (arg1, arg2, …argN) => expression 여러가지 예시들 let sum = (a, b) => a + b; // 이처럼 간단한 표현식일 경우 { } 생략 console.log(sum(1, 2)); // 3 let double = n => n * 2; console.lo..
복수의 if 문 ➡️ switch 문 특정 변수를 다양한 상황에서 비교한다 코드 자체가 비교 상황을 잘 설명한다 switch/case 인수에 어떤 표현식이든 올 수 있다 switch ( x ) { case ‘ value1’ : // if ( x === ‘value1’ ) … [break] case ‘ value2’ : // if ( x === ‘value2’ ) … [break] default’ : // default 가 있는 경우 일치하는 값이 없다면 이 부분이 실행 … [break] } let a = 2 + 2 switch (a) { case 3: console.log(‘비교하려는 값보다 적습니다.’); break; case 4: // 일치하므로 실행, 코드종료 console.log(‘비교하려는 값과..
반복문 빠져나오기(break) falsy 대신 임의의 종료 break(언제든지 반복문 종료 가능) 반복문의 본문 가운데 또는 본문 여러 곳에서 조건을 확인해야 하는 경우 사용 let sum = 0; while (true) { let value = +prompt(“숫자를 입력하세요.”, ‘’); if (!value) brake; // user가 취소 혹은 아무것도 입력하지 않았을 때 작동 sum += value; } console.log( ‘ 합계:’ + sum ); 다음 반복으로 넘어가기(continue) 현재 실행 중인 반복을 멈추고 다음 반복을 강제로 실행 for (let =0 ; i < 10 ; i++) { // 조건이 true 라면 남아있는 본문은 실행되지 않는다. if ( i % 2 == 0 )..
while 반복문 while ( 조건문(condition) ) { // 반복문 본문(body) } 조건문이 truth면 반복문 본문의 코드가 실행된다 let i = 0; while (i < 3) { console.log(i); // 0부터 시작하여 0, 1, 2을 출력 i++; } 반복문이 한번 실행 되는 것을 반복(iteration)이라 한다 반복문 조건엔 "조건식" 뿐만 아니라 모든 종류의 표현식, 변수가 올 수 있으며 조건은 while에 의해 평가되고, 불린값으로 변경된다 let i = 3; while (i) { console.log(i); // 3,2,1 i--; } 반복문도 본문이 한 줄 코드면 { } 를 생략할 수 있다 let i = 3; while(i) console.log(i--); do…..
*최근에 추가된 문법이라 구식 브라우저에 폴리필이 필요하다 *polyfill : 웹 개발에서 기능을 지원하지 않는 웹 브라우저 상의 기능을 구현하는 코드, 쉽게 말해서 구식 브라우저에서 업데이트된 코드를 사용할 수 있게 해주는 것 nullish 병합 연산자(nullish coalescing operator, ??) 짧은 문법으로 여러 인자 중 확정되어있는 변수(=값이 할당된 변수)를 찾을 수 있다 또는 null, undefined의 값을 가진 변수에 값을 할당해주는 용도로 사용할 수 있다 a ?? b a가 null도 아니고 undefined도 아니면 a, 그 이외 경우는 b x = (a !== null && a !== undefined) ? a : b 와 같은 경우 (대신 코드가 길어진다) let fir..
세 종류의 논리 연산자 : ||(OR), &&(AND), !(NOT) 인자로 모든 타입의 값을 받고 모든 타입에 값을 반환한다 ||(OR) 이항 연산자로 인자가 두개다 피연산자가 모두 false 인 경우를 제외하면 항상 true 값을 반환 피연산자가 불린형이 아니면 평가를 위해 불린형으로 변환한다 if ( 1 || 0 ) { // if( true || false )와 같은 코드 console.log(‘truthy’) } 조건 중 하나라도 true 인지를 테스트 하는 용도로 if 문에서 많이 사용된다 let hour = 12; let isWeekend = true; if (hour 18 || isWeekend) { console.log(‘영업시간이 아닙니다.’) } if 문 안에..
if 문 if(…) 문은 괄호 안에 들어가는 조건을 평가, true 일 때 코드 블록 실행 if(…) { } 의 형식을 지키도록 하자 let year = prompt('ECMAScript-2015 명세는 몇 년도에 출판되었을까요?', ''); if (year == 2015) alert( '정답입니다!' ); 복수의 문 실행도 가능 if (year == 2015) { alert( "정답입니다!" ); alert( "아주 똑똑하시네요!" ); } boolean 형으로의 변환 if(…) 문은 괄호 안의 표현식을 평가, 결과값은 불린값으로 변환 falsy 값 : 0, “”, null, undefined, NaN falsy 값 이외는 truthy 값 let condition = (year == 2015); // ..