1. JavaScript의 연산자
산술 연산자
var x = 10;
var y = 3;
console.log(x + y); //13
console.log(x - y); //7
console.log(x * y); //30
console.log(x / y); //3.3333333333333335
console.log(x % y); //1 (나머지)
console.log(x ** y); //1000 (거듭제곱)
대입 연산자
var x = 10; //x에 10을 대입
var y = x; //y에 x의 값을 대입
console.log(y); //10
할당 연산자
+=, -=, *=, /=
a &&= 10
a = a && 10
// a가 truthy 하면 10을 대입
a = 0 &&10
// a=0
a = 0 || 10
// a=10
비교 연산자
true 또는 false 반환
==, !=, ===, !==, <, >, <=, >=
var x = 10;
var y = '10';
console.log(x == y); //true (값만 비교)
console.log(x === y); //false (타입까지 비교)
console.log(x != y); //false (값만 비교)
console.log(x !== y); //true (타입까지 비교)
console.log(x < y); //false
console.log(x > y); //false
console.log(x <= y); //true
console.log(x >= y); //true
논리 연산자
&&, ||, !
var x = true;
var y = false;
console.log(x && y); //false (x와 y가 모두 참일때만 참)
console.log(x || y); //true (x와 y 중 하나라도 참이면 참)
console.log(!x); //false (x의 반대값)
XOR - 달라야 true 임
typeof 연산자
피연산자의 데이터 타입을 문자열로 반환
2. JavaScript의 표현식
하나 이상의 연산자와 피연산자로 구성
하나의 값으로 평가됨
리터럴 표현식
고정된 값을 나타내는 표현식
console.log(10); //10 (숫자 리터럴)
console.log('hello'); //'hello' (문자열 리터럴)
console.log(true); //true (불리언 리터럴)
console.log(null); //null (null 리터럴)
console.log(undefined); //undefined (undefined 리터럴)
변수 표현식
변수 이름을 나타내는 표현식
let x = 10;
함수 호출 표현식
function add(a,b){
return a+b;
}
let result = add(2,3)
console.log(result);
객체 접근 표현식
객체의 속성이나 메소드에 접근하기 위해 점(.) 또는 대괄호([])를 사용하는 표현식
let obj = {name: 'Alice', age:20};
console.log(obj.name); //Alice
console.log(obj[age]); //20
const obj = {1:1}
obj.1 -> 불가능
변수 선언할때 숫자로 할 수 없고 숫자로 시작하면 안됨
.뒤에는 변수가 와야하기 때문에 숫자가 올 수 없는것
조건부(삼항) 표현식
조건? 참일때 값 : 거짓일때 값
형태로 작성
let x = 10;
let y = x > 0 ? 'positive' : 'negative';
console.log(y); // positive
truthy falsy
boolean 값을 따질 때 참인 것처럼, 거짓인 것처럼 여겨짐
falsy일때 제외하고 다 truthy임
- falsy
- false
- 0
- -0
- 0n
- null
- undefined
- NaN
- 빈문자열 ("")
isNaN() 함수 사용
function을 제외한 것은 object임 -> Null도 오브젝트, 객체도 오브젝도, 배열도 오브젝트
배열인지 객체인지 null 인지 확인할 수가 없음
null === null
Array.isArray([]) 를통해서 비교
참고
알고리즘 공부 사이트
leetcode - 알고리즘 공부 사이트
'WEB > vanilla.js' 카테고리의 다른 글
JavaScript 함수와 객체 (0) | 2023.03.22 |
---|---|
JavaScript 조건문과 반복문 (0) | 2023.03.22 |
JavaScript 변수와 데이터 타입 (0) | 2023.03.22 |
JavaScript의 프로퍼티와 메서드 (0) | 2023.03.22 |
JavaScript란? (0) | 2023.03.13 |