목록자료구조, 알고리즘/JavaScript 기초 문법 (42)
채린씨의 티스토리
* 반복문 for - 선언문(Init Expression), 조건문(Test Expression), 증감문(Update Expression) 형태로 이루어진 반복문 - 조건문이 fail이 되기 전까지 코드 블록을 계속 반복적으로 수행 - 선언문, 조건문, 증감문 생략 가능 ① Init Expression에서 변수 초기화 ② Test Expression에서 초기화된 변수로 조건문 판단 ③ ②에서 판단한 조건문이 참일 경우, Statement Block 실행 ④ Update Expression에서 변수 업데이트 (주로 증가/감소) ⑤ Test Expression에서 업데이트된 변수로 조건문 판단 ⑥ ⑤에서 판단한 조건문이 참일 경우, Statement Block 실행 ⑦ Update Expression에서 ..
[문제] - 조건문 switch를 이용하여 1~7 사이의 숫자를 입력받으면 요일을 출력해주는 코드를 작성하시오. - 1(월요일) ~ 7(일요일)로 맵핑된다. // Template code const day = 3; let weekend = ""; switch (day) { // 구현 필요 } console.log(weekend); // output: 수요일 [나의 풀이] - EZ.. 앞부분은 얼른얼른 넘어가자구.. const day = 3; let weekend = ""; switch (day) { case 1: weekend = "월요일"; break; case 2: weekend = "화요일"; break; case 3: weekend = "수요일"; break; case 4: weekend = "목..
* 조건문 switch - switch는 표현식을 평가하여 그 값이 일치하는 case문을 실행하는 조건문 - switch, case, break, default 키워드를 통해 구성되며, 조건에 맞는 case 구문을 수행 - 조건에 맞는 case 구문이 없는 경우 default 구문을 수행 (생략 가능) - 일반적으로 하나의 case만 수행되도록 각 case 구문의 끝을 break로 맺음 - 만약 break;가 없으면 조건에 맞는 case구문부터 모든 구문을 수행! - 이러한 특징을 활용한 코드 - 코딩테스트에서 switch - case문이 은근히 안떠올라서 복잡한 if문을 쓰는 경우가 많다.. 잘 활용하면 좋을 듯! - 아니 잠깐만.. switch문에서 문자열 판별이 가능하다..? 댑악.. C에서는 정수..
* 조건문 if-else - 알고리즘에 논리적 비교를 할 때 사용되는 조건식 - if, if else, else 키워드를 통해 구성되며, 조건식에 맞을 경우 {} 내에 있는 명령문을 수행 - 단, 실행 문장이 단일 문장일 경우에는 {} 생략 가능 (그래도 {}를 쓰는 것을 습관화하자!) - if-else문의 구조 - if-else if-else문의 구조 * 3항 연산자 - 3항 연산자를 이용해 if-else를 대체할 수 있음 - 변수 = (조건식) ? 조건식이 참일 때 대입할 값 : 거짓일 때 대입할 값 - msg를 let으로 선언하지 않고 사용해도 괜찮나..? 그리고 msg는 if문 안에서 처음으로 사용되었으니 지역변수 아닌가..? 더보기 var, let 등을 생략하고 변수 선언이 가능하다! (친절한 ..
* Scope란? - 변수 혹은 상수에 접근할 수 있는 범위 - 모듈/함수 내 코드에서 동일한 변수 사용 시 간섭을 줄이는 용도로 사용 - Global Scope에서 선언된 전역변수는 어디에서도 접근 가능 - Local Scope(block/function level scope)에서 선언된 지역변수는 해당 지역 내에서만 접근 가능 - 중복 선언 아니야..? No! 다른 Scope 내에서는 선언 가능 - Global Scope에서 지역 변수에 접근하려고 하면..? - Local Scope 안에 Local Scope가 있으면..? - 헷갈리지만 쉽게 이해하는 꿀팁.. 더보기 - 일단 내가 있는 곳(Local Scope)에서 찾고 싶은 물건을 찾아보고, 없으면 밖(상위 Local Scope)에 나가서 찾아보고..
* 비교 연산자 - 좌항과 우항의 피연산자를 비교한 후, 결괏값을 논리적 자료형(true/false)으로 반환하는 연산자 비교 연산자 설명 예제 결과 a > b a가 b보다 크면 true 아니면 false 5 > 3 true a = b a가 b보다 크거나 같으면 true 아니면 false 5 >= 10 false a
* 연산자 - 프로그램에서 데이터를 처리하여 결과를 산출할 목적으로 사용되는 문자 - 피연산자: 연산의 대상 값 - 피 연산자의 개수에 따라 단항/이항/삼항 연산자의 종류가 존재 연산자 단항 연산자 부호 연산자 +, - 증감 연산자 ++, -- 논리 연산자 ! 비트 연산자 ~ 이항 연산자 산술 연산자 +, -, *, /, % 대입 연산자 = 비교 연산자 ==, != 논리 연산자 &&, || 삼항 연산자 (조건식)?(참일 경우의 식):(거짓일 경우의 식) * 연산자 우선순위 - 우선순위가 클수록 먼저 수행됨 (https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Operator_Precedence) 21 그룹 없음 ( … ) 20..
* 형 변환 - 자바스크립트는 느슨한 타입 언어, 혹은 동적 타입 언어이므로 변수의 자료형을 명시적으로 선언할 필요가 없음(٩( ᐛ )و ) - 연산자로 인한 계산이나 변수에 전달되는 값은 자동으로 암묵적 형 변환됨 - 강제적 형 변환을 위해서는 자료형 함수를 이용해 명시적 형 변환 수행 * String으로 형 변환 - 형 변환 전 - 잠깐, NaN의 타입이 number라고?? 더보기 - ㄴㅇㄱ (NaN !== NaN) == true ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ.. 링크를 들어가 보면 그 이유를 대충은.. 알 수 있다. NaN는 숫자 유형이긴 한데, 정해진 특정값은 아닌.. 어쩌구.. 일단은 패스하자. - String으로 형 변환 - 잠깐, 여러 줄의 코드를 세로로 묶어서 동시에 수정하는 법? 더보기 mac..