WEB/vanilla.js

JavaScript 연산자와 표현식

구니바 2023. 3. 22. 19:42

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