산술 연산자 (Arithmetic Operators)
let a = 5;
let b = 2;
a + b; // 덧셈: 5 + 2 = 7
a - b; // 뺄셈: 5 - 2 = 3
a * b; // 곱셈: 5 * 2 = 10
a / b; // 나눗셈: 5 / 2 = 2.5
a % b; // 나머지: 5를 2로 나눈 나머지 1
a ** b; // 제곱: 5의 2승, 즉 5 * 5 = 25
'1' + 1; // '11'
'11' - 2; // 9
'11' * 2; // 22
'11' / 2; // 5.5
'11' % 2; // 1
'11' > 10; // true
할당 연산자 (Assignment Operators)
let x = 10;
// x에 5를 더하고, 결과를 다시 x에 할당
x += 5; // x는 이제 15가 됩니다.
// x에서 3을 빼고, 결과를 다시 x에 할당
x -= 3; // x는 이제 12가 됩니다.
// x에 2를 곱하고, 결과를 다시 x에 할당
x *= 2; // x는 이제 24가 됩니다.
// x를 4로 나누고, 결과를 다시 x에 할당
x /= 4; // x는 이제 6이 됩니다.
// x를 3으로 나눈 나머지를 x에 할당
x %= 3; // x는 이제 0이 됩니다.
// x를 제곱하고, 결과를 다시 x에 할당
x **= 2; // x는 이제 0의 제곱인 0이 됩니다.
비교 연산자 (Comparison Operators)
const a = 5
const b = "5"
console.log(a == b) // true
console.log(a != b) // false
// 데이터 타입 포함
console.log(a === b) // false
console.log(a === Number('5')) // true
console.log(a !== b) // true
console.log(a > b) // false
console.log(a > '2') // true
console.log(a < b) // false
console.log(a >= b) // true
console.log(a <= b) // true
논리 연산자 (Logical Operators)
// true && true
const result1 = 1 && true && "안녕"
console.log(result1)// "안녕"
if (1 && true && "안녕") // true
if (false && 1) // false
// -----------------------------------
// false || false
const result2 = 0 || false || null || true
console.log(result2) // true
if ((0 || false) || (null || true)) // true
if (0 || false || null) // false
if (1 || false) // true
// -----------------------------------
!true // false
!false // true
let toggle = false
event(toggle = !toggle)
in 연산자 (In Operator)
const car = { make: 'Honda', model: 'Accord', year: 1998 }
console.log('make' in car) // true
console.log(car.make) // 'Honda'
console.log(car.number) // undefined
const numbers = ["a", "b", "c", "d", "e"]
console.log(6 in numbers) // false
증가/감소 연산자 (Increment/Decrement Operators)
let Increment = 0
console.log(Increment++) // 0 : 다음에 사용 할 때부터 반영
console.log(++Increment) // 1 : 바로 반영
let Decrement = 0
console.log(Decrement--) // 0 : 다음에 사용 할 때부터 반영
console.log(--Decrement) // -1 : 바로 반영
삼항(조건) 연산자 (Ternary Operator)
// 조건 ? 참 : 거짓
true ? true : false
(true) ? (undefined) ? 'null' : 'undefined' : 'false' // 'undefined'
타입 연산자 (Type Operators)
console.log(typeof 42) // "number"
console.log(typeof "Hello") // "string"
console.log(typeof true) // "boolean"
console.log(typeof undefined) // "undefined"
console.log(typeof {}) // "object"
console.log(typeof []) // "object"
console.log(typeof function() {}) // "function"
// ------------------------------------------------------------------------------
// 객체 instanceof 생성자 함수
function Car (make, model) {
this.make = make
this.model = model
}
var myCar = new Car('Toyota', 'Camry')
console.log(myCar instanceof Car)
// true : myCar 객체가 Car 생성자 함수의 인스턴스인지 확인
// ------------------------------------------------------------------------------
// 생성자 함수
function Person(name, age) {
this.name = name
this.age = age
}
// Person 생성자 함수를 사용하여 person1, person2 인스턴스 생성
var person1 = new Person("홍길동", 30)
var person2 = new Person("이순신", 40)
// 각 인스턴스의 속성에 접근
console.log(person1.name) // "홍길동"
console.log(person2.age) // 40
func() (함수 호출) 연산자
function fun() {}
fun() // 함수 호출
!! 연산자
console.log(!!0, !0) // false, true
console.log(!!1, !1) // true, false
쉼표 연산자 (Comma Operator)
let x = 1
x = (x++, x)
console.log(x) // 2
x = (2, 3)
console.log(x) // 3
멤버 연산자 (Member Operators)
var person = {
name: "John",
age: 30,
obj: {
num : 1
}
}
console.log(person.name) // "John"
const propertyName = "name";
console.log(person[propertyName]) // "John"
console.log(person["name"]) // "John"
console.log(person["obj"]["num"]) // 1
console.log(person["obj"].num) // 1
제곱 연산자 (Exponentiation Operator)
console.log(3 ** 4) // 81
console.log(10 ** -2) // 0.01
console.log(2 ** (3 ** 2)) // 512
console.log((2 ** 3) ** 2); // 64
728x90
'웹개발 > javascript' 카테고리의 다른 글
[자바스크립트] Rest 연산자 (Rest Operator) (0) | 2024.07.30 |
---|---|
[자바스크립트] Spread 연산자 (Spread Operator) (0) | 2024.07.30 |
[자바스크립트] 자바스크립트 6가지 false 값 자세히 알아보기 (0) | 2024.07.30 |
[자바스크립트] 자바스크립트 데이터 타입 이해하기 (0) | 2024.07.29 |
[자바스크립트] 자바스크립트 불변성 이해하기 (0) | 2024.07.29 |