๐ if๋ฌธ
if (์กฐ๊ฑด) {
//true๋ผ๋ฉด ์คํ
}
โ์กฐ๊ฑด : true ๋๋ false์ ๊ฒฐ๊ณผ๊ฐ ๋์ค๋ ์กฐ๊ฑด๋ฌธ
let x = 10;
if (x > 0) {
console.log("x ๋ ์์์
๋๋ค.")
}
x ๋ ์์์
๋๋ค.
๐ผy์ ๊ธธ์ด๊ฐ 5๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ผ๋ฉด ๊ธธ์ด๋ฅผ console.log๋ก ์ถ๋ ฅ
let y = "Hello, World!";
if (y.length > 5) {
console.log( y.length)
}
13
๐ if - else๋ฌธ
let x = -10;
if (x > 0) {
console.log("x๋ ์์์
๋๋ค.")
} else {
console.log("x๋ ์์์
๋๋ค.")
}
x๋ ์์์
๋๋ค.
๐ if - else if - else๋ฌธ
let x = 10;
if (x < 0) {
console.log("1")
} else if (x >= 0 && x < 10) {
console.log("2")
} else {
console.log("3")
}
3
๐switch
โ๋ณ์์ ๊ฐ์ ๋ฐ๋ผ, ์ฌ๋ฌ ๊ฐ์ ๊ฒฝ์ฐ(case) ์ค ํ๋๋ฅผ ์ ํ
let fruit = "์ฌ๊ณผ";
switch (fruit) {
case "์ฌ๊ณผ":
console.log('์ฌ๊ณผ์
๋๋ค.');
break;
case "๋ฐ๋๋":
console.log('๋ฐ๋๋์
๋๋ค.');
break;
case "ํค์":
console.log('ํค์์
๋๋ค.');
break;
default:
console.log('์๋ฌด๊ฒ๋ ์๋๋๋ค.');
break;
}
์ฌ๊ณผ์
๋๋ค.
โbreak ๋ฅผ ๋ฃ์ง ์์ผ๋ฉด
let fruit = "์ฌ๊ณผ";
switch (fruit) {
case "์ฌ๊ณผ":
console.log('์ฌ๊ณผ์
๋๋ค.');
case "๋ฐ๋๋":
console.log('๋ฐ๋๋์
๋๋ค.');
case "ํค์":
console.log('ํค์์
๋๋ค.');
default:
console.log('์๋ฌด๊ฒ๋ ์๋๋๋ค.');
}
์ฌ๊ณผ์
๋๋ค.
๋ฐ๋๋์
๋๋ค.
ํค์์
๋๋ค.
์๋ฌด๊ฒ๋ ์๋๋๋ค.
๐์กฐ๊ฑด๋ฌธ ์ค์ฒฉ
let age = 20;
let gender = "์ฌ์ฑ";
//๋ฏธ์ฑ๋
์ ๊ตฌ๋ถ
if (age >= 18) {
if (gender === "์ฌ์ฑ") {
console.log("์ฑ์ธ ์ฌ์ฑ์
๋๋ค.");
} else {
console.log("์ฑ์ธ ๋จ์ฑ์
๋๋ค.");
}
} else {
if (gender === "์ฌ์ฑ") {
console.log("์ฑ์ธ ์ฌ์ฑ์
๋๋ค.");
} else {
console.log("์ฑ์ธ ๋จ์ฑ์
๋๋ค.");
}
}
์ฑ์ธ ์ฌ์ฑ์
๋๋ค.
๐and ์กฐ๊ฑด(&&)
let x = 10;
x > 0 && console.log("x๋ ์์์
๋๋ค.")
x๋ ์์์
๋๋ค.
๐or ์กฐ๊ฑด(||)
let y; // y์๋ undefined
let z = y || 20;
console.log(z)
20
โy๊ฐ undefind์ด๋ฉด 20์ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ธํ ํด์ค
if (0) {
console.log("0")
}
if ("") {
console.log("\"\"")
}
if (null) {
console.log("null")
}
if (undefined) {
console.log("undefined")
}
if (NaN) {
console.log("NaN")
}
if (false) {
console.log("false")
}
if (true) {
console.log("true")
}
true
โkey -value pair
โํ๋์ ๋ณ์์ ์ฌ๋ฌ๊ฐ์ ๊ฐ์ ๋ฃ์ ์ ์๋ค.
๐๊ธฐ๋ณธ์ ์ธ ๊ฐ์ฒด ์์ฑ ๋ฐฉ๋ฒ
let person = {
name : "ํ๊ธธ๋",
age : 30,
gender : "๋จ์"
}
๐์์ฑ์ ํจ์๋ฅผ ์ด์ฉํ ๊ฐ์ฒด ์์ฑ ๋ฐฉ๋ฒ
function Person(name, age, gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
let person1 = new Person("ํ๊ธธ๋", 30, "๋จ์");
let person2 = new Person("ํ๊ธธ์", 20, "์ฌ์");
console.log(person1.name);
console.log(person1.age);
console.log(person1.gender);
ํ๊ธธ๋
30
๋จ์
๐Object.key()
โkey๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฉ์๋
let person = {
name : "ํ๊ธธ๋",
age : 30,
gender : "๋จ์"
};
let keys = Object.keys(person);
console.log("keys => ", keys);
keys => [ 'name', 'age', 'gender' ]
๐values
let values = Object.values(person);
console.log("values => ", values);
values => [ 'ํ๊ธธ๋', 30, '๋จ์' ]
๐entries
โkey์ value๋ฅผ ๋ฌถ์ด์ ๋ฐฐ์ด๋ก ๋ง๋ ๋ฐฐ์ด (2์ฐจ์ ๋ฐฐ์ด)
let entries = Object.entries(person);
console.log("entries => ", entries);
entries => [ [ 'name', 'ํ๊ธธ๋' ], [ 'age', 30 ], [ 'gender', '๋จ์' ] ]
๐assign
โ๊ฐ์ฒด๋ฅผ ๋ณต์ฌ
let newPerson = {}
Object.assign(newPerson, person);
console.log("newPerson => ", newPerson)
newPerson => { name: 'ํ๊ธธ๋', age: 30, gender: '๋จ์' }
let newPerson = {}
Object.assign(newPerson, person, {age : 31});
console.log("newPerson => ", newPerson)
newPerson => { name: 'ํ๊ธธ๋', age: 31, gender: '๋จ์' }
๐๊ฐ์ฒด ๋น๊ต
let person1 = {
name : "ํ๊ธธ๋",
age : 30,
gender : "๋จ์"
};
let person2 = {
name : "ํ๊ธธ๋",
age : 30,
gender : "๋จ์"
};
console.log("answer => ", person1 === person2)
answer => false
let str1 = "aaa";
let str2 = "aaa";
console.log("answer => ", str1 === str2)
answer => true
๊ฐ์ฒด๋ ํฌ๊ธฐ๊ฐ ์๋นํ ํฌ๋ค. -> ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ ๋ ๋ณ๋์ ๊ณต๊ฐ์ ์ฃผ์๋ก ์ ์ฅ
person1, person2 ๋ ๋ณ๋ ๊ณต๊ฐ์ ๋ํ ์ฃผ์๋ก ์ ์ฅ์ด ๋๋ค.
person1๊ณผ person2์ ์ฃผ์๋ ๊ฐ ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ false๊ฐ ์ถ๋ ฅ๋๋ค.
console.log(JSON.stringify(person1));
console.log(JSON.stringify(person1) === JSON.stringify(person2));
{"name":"ํ๊ธธ๋","age":30,"gender":"๋จ์"}
true
โJSON.stringify(person1) : person1 ์ฃผ์๊ฐ์ผ๋ก ๋์ด์๋๊ฒ์ ๋ฌธ์์ดํ ํ๋ค.
๐๊ฐ์ฒด ๋ณํฉ
let person1 = {
name : "ํ๊ธธ๋",
age : 30
};
let person2 = {
gender : "๋จ์"
};
let perfectMan = {...person1, ...person2};
console.log(perfectMan)
{ name: 'ํ๊ธธ๋', age: 30, gender: '๋จ์' }
โ ... : spread operator
๐๊ธฐ๋ณธ ์์ฑ
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋", "์ค๋ ์ง"];
๐ํฌ๊ธฐ ์ง์
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋", "์ค๋ ์ง"];
let number = new Array(5);
console.log(number);
[ <5 empty items> ]
console.log('fruits[0] => ', fruits[0])
console.log('fruits[1] => ', fruits[1])
console.log('fruits[2] => ', fruits[2])
fruits[0] => ์ฌ๊ณผ
fruits[1] => ๋ฐ๋๋
fruits[2] => ์ค๋ ์ง
๐push
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋"];
console.log("1 => ", fruits);
fruits.push("์ค๋ ์ง");
console.log("2 => ", fruits);
1 => [ '์ฌ๊ณผ', '๋ฐ๋๋' ]
2 => [ '์ฌ๊ณผ', '๋ฐ๋๋', '์ค๋ ์ง' ]
๐pop
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋"];
console.log("1 => ", fruits);
fruits.pop();
console.log("2 => ", fruits);
1 => [ '์ฌ๊ณผ', '๋ฐ๋๋' ]
2 => [ '์ฌ๊ณผ' ]
๐shift
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋", "ํค์"];
console.log("1 => ", fruits);
fruits.shift();
console.log("2 => ", fruits);
1 => [ '์ฌ๊ณผ', '๋ฐ๋๋', 'ํค์' ]
2 => [ '๋ฐ๋๋', 'ํค์' ]
๐unshift
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋"];
console.log("1 => ", fruits);
fruits.unshift("๋ฐฐ");
console.log("2 => ", fruits);
1 => [ '์ฌ๊ณผ', '๋ฐ๋๋' ]
2 => [ '๋ฐฐ', '์ฌ๊ณผ', '๋ฐ๋๋' ]
๐splice
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋", "ํค์"];
console.log("1 => ", fruits);
fruits.splice(2, 1, "๋ฐฐ");
console.log("2 => ", fruits);
1 => [ '์ฌ๊ณผ', '๋ฐ๋๋', 'ํค์' ]
2 => [ '์ฌ๊ณผ', '๋ฐ๋๋', '๋ฐฐ' ]
โ(a, b, "c") => a๋ถํฐ b๊ฐ ์ญ์ ํ๊ณ c๋ก ๊ฐ์๋ผ์์ค
๐slice
let fruits = ["์ฌ๊ณผ", "๋ฐ๋๋", "ํค์"];
console.log("1 => ", fruits);
let slicedFruits = fruits.slice(1, 2);
console.log("2 => ", slicedFruits);
1 => [ '์ฌ๊ณผ', '๋ฐ๋๋', 'ํค์' ]
2 => [ '๋ฐ๋๋' ]
โslice(a, b) => a๋ฒ์งธ ์ธ๋ฑ์ค์์๋ถํฐ b๋ฒ์งธ ์ธ๋ฑ์ค ์ ๊น์ง ์๋ก์ด ๋ฐฐ์ด๋ก ๋ง๋ค์ด์ค
๐forEach
let numbers = [1, 2, 3, 4, 5];
numbers.forEach(function(item){
console.log('item์
๋๋ค => ', item)
});
item์
๋๋ค => 1
item์
๋๋ค => 2
item์
๋๋ค => 3
item์
๋๋ค => 4
item์
๋๋ค => 5
โ๋งค๊ฐ๋ณ์ ์๋ฆฌ์ ํจ์๋ฅผ ๋ฃ๋ ๊ฒ : ์ฝ๋ฐฑํจ์
โforEach๋ return๊ฐ์ด ํ์ํ์ง ์๋ค. ์์ ์๋ ํจ์๊ฐ ์คํ๋๋ ๊ฒ.
๐map
let numbers = [1, 2, 3, 4, 5];
let newNumbers = numbers.map(function(item){
return item * 2;
});
console.log(newNumbers);
[ 2, 4, 6, 8, 10 ]
โ๊ธฐ์กด์ ์๋ ๋ฐฐ์ด์ ๊ฐ๊ณตํด์ ์๋ก์ด ๋ฐฐ์ด์ ์์ฐํด ๋ด๋ ์ญํ ์ ํ๋ค. return ํ์.
โํญ์ ์๋ณธ ๋ฐฐ์ด์ ๊ธธ์ด๋งํผ์ด return ๋๋ค.
๐filter
let numbers = [4, 1, 5, 4, 5];
let newNumbers = numbers.filter(function(item){
return item === 5;
});
console.log(newNumbers);
[ 5, 5 ]
โ์กฐ๊ฑด์ ํด๋น๋๋ ์์๋ค๋ง ๋ฝ์ ์๋ก์ด ๋ฐฐ์ด๋ก ๋ฐํํ๋ค.
๐find
let numbers = [4, 1, 5, 4, 5];
let result = numbers.find(function(item){
return item > 3;
});
console.log(result);
4
โ์กฐ๊ฑด์ ํด๋น๋๋ ์ฒซ๋ฒ์งธ ์์๋ง ๋ฐํํ๋ค.
for (์ด๊ธฐ๊ฐ; ์กฐ๊ฑด์; ์ฆ๊ฐ์) {
์คํ๋ฌธ
}
๐for๋ฌธ
for (let i=0; i<10; i++) {
console.log(i)
}
0
1
2
3
4
5
6
7
8
9
โ๋ฐฐ์ด๊ณผ for๋ฌธ์ ์ง๊ฟ์ด๋ค
const arr = ["์ผ", "์ด", "์ผ", "์ฌ", "์ค"];
for (let i = 0; i < arr.length; i++) {
console.log('i : ', i, ' arr[',i,'] : ', arr[i]);
}
i : 0 arr[ 0 ] : ์ผ
i : 1 arr[ 1 ] : ์ด
i : 2 arr[ 2 ] : ์ผ
i : 3 arr[ 3 ] : ์ฌ
i : 4 arr[ 4 ] : ์ค
๐ผ0๋ถํฐ 10๊น์ง์ ์ ์ค์์ 2์ ๋ฐฐ์๋ง console.log๋ก ์ถ๋ ฅ
for (let i = 0; i <= 10; i++) {
if (i >= 2) {
if (i % 2 === 0){
console.log(i);
}
}
}
2
4
6
8
10
๐for ~ in๋ฌธ
โ๊ฐ์ฒด์ ์์ฑ์ ์ถ๋ ฅํ๋ ๋ฌธ๋ฒ
let person = {
name : "John",
age : 30,
gender : "male"
};
for (let key in person) {
console.log(key + " : " + person[key]);
};
name : John
age : 30
gender : male
๐while๋ฌธ
while (์กฐ๊ฑด) {
//์ฆ๊ฐ
}
let i = 0;
while (i < 10) {
console.log(i);
i++;
}
0
1
2
3
4
5
6
7
8
9
๐ผwhile๋ฌธ์ ํ์ฉํด์, 3์ด๊ณผ 100 ๋ฏธ๋ง์ ์ซ์ ์ค 5์ ๋ฐฐ์์ธ ๊ฒ๋ง ์ถ๋ ฅ
let i = 0;
let num = [];
while ( i < 100) {
if (i > 3 && i % 5 === 0) {
num.push(i);
}
i++;
}
console.log(num);
console.log(num);
[
5, 10, 15, 20, 25, 30, 35,
40, 45, 50, 55, 60, 65, 70,
75, 80, 85, 90, 95
]
๐do ~ while๋ฌธ
โ1๋ฒ ์คํ ํ ์กฐ๊ฑด ํ์ธ
let i = 0;
do {
console.log(i);
i++;
} while (i > 10);
0
๐break
โfor๋ฌธ๊ณผ ํญ์ ๊ฒฐํฉํด์ ์ฐ์ธ๋ค
for (let i = 0; i <= 10; i++) {
if (i === 5) {
break;
}
console.log(i);
};
0
1
2
3
4
๐continue
โfor๋ฌธ๊ณผ ํญ์ ๊ฒฐํฉํด์ ์ฐ์ธ๋ค
for (let i = 0; i <= 10; i++) {
if (i === 5) {
continue;
}
console.log(i);
}
0
1
2
3
4
6
7
8
9
10
๐ ์ฝ๋ฐฑํจ์ ์ด๋ ค์