할당하다 = 대입하다
let x = 5
x = x - 2
서로 같다고 생각하는 것이 아닌 오른쪽에 있는 피연산자를 왼쪽 피연산자에 할당한다고 생각해야 됨.
// 다음 두 줄은 같습니다
x = x + 1;
x += 1;
// 다음 두 줄은 같습니다
x = x + 2;
x += 2;
// 다음 두 줄은 같습니다
x = x * 2;
x *= 2;
// 다음 두 줄은 같습니다
x = x - 3;
x -= 3;
// 다음 두 줄은 같습니다
x = x / 2;
x /= 2;
// 다음 두 줄은 같습니다
x = x % 7;
x %= 7;
// 다음 세 줄은 같은 의미입니다
x = x + 1;
x += 1;
x++;
// 다음 세 줄은 같은 의미입니다
x = x - 1;
x -= 1;
x--;
function square(x){
console.log('return 전');
return x * x;
console.log('return 후'); // 👉 Dead Code 실행되지 않음
}
cosnole.log('함수 호출 전'); // 함수 호출 전
console.log(square(3)); // 9
console.log('함수 호출 후'); // 함수 호출 후
함수를 선언할 때 return문은 선언하지 않으면 undefined 값을 리턴함.
✅ return : 함수 실행, 값 반환
✅ console.log : 값을 출력
function printSquare(x){
console.log(x * x);
}
function getSquare(x){
return x * x;
}
printSquare(3) // 9
getSquare(3) // 아무것도 안 나옴
console.log(getSquare(3)) // 9;
console.log(printSquare(3)) // 👉 undefined
파라미터가 있는 함수에 아무런 값을 전달하지 않고 함수를 호출하게 되면 undefined이 출력 됨
function sayHello(name){
console.log(`안녕하세요 ${name}님!`);
}
sayHello('코드잇'); // 안녕하세요 코드잇님!
sayHello(); 👉 파라미터에 아무런 값을 전달하지 않음 // 안녕하세요 undefined님!
let x;
console.log(x); // undefined
console.log(sayHello('코드잇 최고')); // undefined
옵셔널 파라미터(nationality = '한국') 선언 시 항상 맨 뒤
에 작성하기
function introduce(name, age, nationality = '한국'){
// 생략...
}
function myFunction(){ // 👉 블록문(Block Statement)
let x = 3 // 👉 로컬 변수, 지역 변수(Local Variable)
console.log(x);
}
myFunction(); // 3
console.log(x); // ❌ error : x is not defined
let x = 3; // 👉 글로벌 변수, 전역 변수(Global Variable)
function myFunction(){
let x = 5
console.log(x);
}
myFunction(); // 5
consolel.log(x); // 3
변하지 않고 일정한 값을 유지하는 값
대문자로 작성하고 단어가 두 개 이상일 경우 _
연결해서 작성한다.
const MY_NUMBER = 010;
const PI = 3.14;
const PI; //❌❌❌ 상수는 초기값을 지정하지 않으면 에러가 발생함!!