#2.1 Basic Data Types
Number : Integer(์ ์), Float(์์)
String : ๋ฌธ์์ด, ์ฒ์๋ถํฐ ๋๊น์ง ๋ฌธ์๋ก ์ด๋ฃจ์ด์ง
๋ฌธ์์ด์ ์๋์ ๊ฐ์ด ''๋ ""๋ก ๊ฐ์ธ์ ํํํด์ผ ํ๋ค.
console.log('hello');
console.log("my name is " + "hayeon");
#2.2 Variables
console.log(5 + 2);
console.log(5 * 2);
console.log(5 - 2);
์๋ ์ฝ๋์์ 5๋ฅผ ๋ค๋ฅธ ์ซ์๋ก ๋ณ๊ฒฝํ๊ณ ์ถ๋ค๋์ง, 2๋ฅผ ๋ค๋ฅธ ์ซ์๋ก ๋ณ๊ฒฝํ๊ณ ์ถ์ ๋ ํ๋ํ๋ ๋ฐ๊ฟ์ค์ผํ๋ ๊ฒ์ ๋ฒ๊ฑฐ๋ก์ด ์ผ์ด๋ค. ์ด ๊ท์ฐฎ์ ์ผ์ ํด๊ฒฐํด์ฃผ๋ ๊ฒ์ด ๋ณ์๋ค.
๋ณ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ const๋ฅผ ์ฌ์ฉํ๋ค. constant(์์)๋ฅผ ์๋ฏธํ๋ฉฐ, ๋ฐ๋์ง ์๋ ๊ฐ์ด๋ผ๋ ๋ป์ด๋ค.
const๋ฅผ ๋ง๋ค ๋ javascript์์๋ ์ฃผ๋ก camelCasing ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ค. ์๋ ์ฝ๋์์ ์ ์ ์๋ฏ์ด myName์ฒ๋ผ, ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ ์๋ฌธ์๋ก ์์ํ๊ณ ๋ณตํฉ์ด์ผ ๊ฒฝ์ฐ PascalCasing(๋ณตํฉ์ด์ผ ๊ฒฝ์ฐ ์ค๊ฐ์ ์์ํ๋ ์๋ก์ด ๋จ์ด๋ ๋๋ฌธ์๋ก ์ ์)๊ณผ ๋์ผํ๊ฒ ์ ์ฉํ๋ค. ๊ธด ๋ณ์์ ์ด๋ฆ์ด์ด๋, veryLongVariableName ์ฒ๋ผ ํ์ค์ ๋ง๊ฒ ์์ฑํ๋ฉด ๋๋ค.
ํ์ด์ฌ์์๋ ์ ๋ถ ์๋ฌธ์๋ก ์ฐ๋ ๋์ , ๋ณตํฉ์ด์ ๊ฒฝ์ฐ ๊ฐ ๋จ์ด๊ฐ ๋๋ ๋๋ง๋ค _๋ฅผ ์ฌ์ฉํ๋ค. my_name, very_long_variable_name ๊ณผ ๊ฐ์ด ์ธ ์ ์๋ค.
const a = 5;
const b = 2;
console.log(a + b);
console.log(a * b);
console.log(a - b);
const myName = "hayeon";
console.log("hello " + myName);
#2.3 const and let
let, const, var์ ์ฐจ์ด์
๋ณ์ | const | let | var |
์ฌ์ ์ธ | โ | โ | โญ |
์ฌํ ๋น | โ | โญ | โญ |
let์ const์ ๋ฌ๋ฆฌ ์ฌํ ๋น์ ๊ฐ๋ฅํ๋ค. ๋ค๋ง ๊ฐ์ ์ด๋ฆ์ผ๋ก ๋ let myName = "~~"๊ณผ ๊ฐ์ด ์ฌ์ ์ธ์ ํ๋ค๋ฉด ์ค๋ฅ๊ฐ ๋ ๊ฒ์ด๋ค. (์ฌ์ ์ธ์ ๋ถ๊ฐํ๊ธฐ ๋๋ฌธ์ด๋ค.)
์๋ ์ฝ๋์์ ๋ง์ฝ myName์ const๋ก ์ ์ธํ์ ๊ฒฝ์ฐ let์ฒ๋ผ ์ฌํ ๋น์กฐ์ฐจ ๋ถ๊ฐ๋ฅํ๋ค.
let myName = "hayeon"; // let์ ์๋กญ๊ฒ ์ ์ํ ๋ ์ฌ์ฉํ๋ฏ๋ก (์ฌ์ ์ธ ๊ธ์ง)
console.log("hello " + myName);
// ์ฌํ ๋น
myName = "kimHaYeon"; // ์ฌํ ๋นํ ๋๋ ๋ค์ let์ ๋ถ์ด์ง ์๋๋ค.
console.log("hello " + myName);
var์ ๊ฒฝ์ฐ ์ฌ์ ์ธ, ์ฌํ ๋น์ด ๋ชจ๋ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๋๋ฌด ์ง๋์น๊ฒ ์ ์ฐํ ๋๋จธ์ง ์ธ์ด์ ๋ํ ๋ณดํธ๋ฅผ ๋ฐ์ง ๋ชปํด ๋ณ์๊ฐ์ด ์ค์๋ก ๋ณ๊ฒฝ๋ ์๋ ์์ผ๋ ์ฌ์ฉ ๋น๊ถ์ฅ.
์ฃผ๋ก const๋ก ์ ์ธํ๋ฉฐ, ๋ฐ๋ ์ ์๋ ๋ณ์์ ๊ฒฝ์ฐ๋ let์ผ๋ก ์ ์ธํ๋๋ก ํ์. var๋ X
#2.4 Booleans
boolean : true(์ฐธ), false(๊ฑฐ์ง) ์ ๋ํ๋ด๋ ํ์
์ฌ์ฉ์์ ๋ก๊ทธ์ธ ์ฌ๋ถ, ๋น๋์ค์ ์ฌ์ ์ฌ๋ถ, ์น์ฌ์ดํธ์ ๋ก๋ฉ ์ฌ๋ถ,
cf) "true", "false"๋ ๋ฌธ์์ด์ด๋ค.
undefined : ๋ณ์๋ ์ ์ธํ์ผ๋ ๊ฐ์ ํ ๋นํ์ง ์์
null : ๋ณ์์ null(๊ฐ์ด ์์)์ด ํ ๋น๋จ. => ์ ์๋ ๋์ด์์
#2.5 Arrays
array๋ ๋ฐ์ดํฐ๋ฅผ ๋์ดํ๊ธฐ ์ํ ๋ฐฉ๋ฒ ์ค ํ๋๋ก, ํญ์ [] ์์ ,๋ก ๋ฐ์ดํฐ๋ฅผ ๋์ดํ๋ค. array์ ๋ค์ด๊ฐ ์ ์๋ ๋ฐ์ดํฐ๋ ๋ณ์, string, number, boolean์ ๋ฌผ๋ก null, undefined๊น์ง ๋ชจ๋ ๊ฐ๋ฅํ๋ค.
const mon = "mon"
const thu = "thu"
const sun = "sun"
const daysOfWeek = [mon, "tue", "wed", thu, "fri", "sat", sun];
const nonsense = [1, 2, "hello", false, null, true, undefined, "hayeon"]
console.log(daysOfWeek, nonsense);
// Get Item from Array
console.log(daysOfWeek[3]); // 3๋ฒ ์ธ๋ฑ์ค์ด๋ฏ๋ก 4๋ฒ์งธ ๊ฐ์ธ thu ์ถ๋ ฅ
// Add one more day to the array
daysOfWeek.push("yasumi");
console.log(daysOfWeek);
const๋ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค๊ณ ํ๋๋ฐ ์ push()๋ฅผ ์ธ ์ ์๋๊ฑฐ์ง? ์ ๋ํ ํด๋ต : https://overcome-the-limits.tistory.com/261?category=969104 ์ฐธ๊ณ
์์๋ก ์ ์ธ๋ ๋ณ์์ ๊ฐ์ ํ ๋นํ๋ค.
=> ๋ณ์์ ๊ทธ ๊ฐ์ ๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ํ ๋นํ๋ค.
=> ๊ทธ ์ฃผ์๊ฐ ๊ฐ๋ ๊ฐ์ด ๋ฐฐ์ด์ด ์๋๋ผ๋ฉด (number, string, boolean ..),
๊ทธ ๊ฐ์ ๊ฐ๋ ๋ณ์ ์์ฒด๋ ๊ทธ ๊ฐ์ ์ฐธ์กฐํด์ค๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ๊ธฐ ๋๋ฌธ์ ์์๋ก ๊ณ ์ ๋๋ค.
๋ฐฐ์ด๋ก ํ ๋น์ ๋ฐ์ ์์ ๋ณ์
=> ํ ๋น๋ ๋ฐฐ์ด ๊ฐ์ ๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ๋ฐ์์ ์ฐธ์กฐํจ
=> ์ฐธ์กฐํ๋ ๋ฐฐ์ด์ ๊ฐ์ ์์ , ์ถ๊ฐ, ์ ๊ฑฐํจ
=> ์ฆ ๋ฐฐ์ด์ ์ฃผ์๋ฅผ ๊ฐ์ ธ์ ์ฐธ์กฐํ๋ ์์ ๋ณ์(ex. daysOfWeek) ์์ฒด์๋ ์ํฅ์ ๋ผ์น์ง ์์
=> ๋ณ๊ฒฝ : ๋ฐฐ์ด์ ์ฃผ์๊ฐ ์ฒซ ๋ถ๋ถ (ex. daysOfWeek[0])์ ์ฃผ์๋ฅผ ๊ฐ์ ธ์ค๋ฏ๋ก, ์ฃผ์์๋ ๋ณ๊ฒฝ์ด ์์ผ๋ฏ๋ก ์์ ๋ณ์์๋ ์ํฅ์ด ์๋ค.
=> ์ถ๊ฐ ๋ฐ ์ญ์ : ๊ทธ ์ดํ ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ๋ํด ์ ์ฉ๋๋ ๊ฒ์ด๋ฏ๋ก ์ํฅ์ ๋ผ์น์ง ์์
const toBuy = ["potato", "tomato", "pizza"];
console.log(toBuy[2]); // pizza
#2.6 Objects
object๋ property๋ฅผ ๊ฐ์ง ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํด์ฃผ๋ฉฐ, { }๋ฅผ ์ฌ์ฉํ๋ค. ํ์ด์ฌ์ dictionary, ์๋ฐ์ hashMap๊ณผ ๊ฐ์ ๊ฐ๋ .
const player = {
name: "hayeon",
points: 10,
fat: true,
};
// player์ property์ ์ ๊ทผํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ
console.log(player.name);
console.log(player["name"]);
// object๋ฅผ updateํ ์ ์๋ค.
console.log(player);
player.fat = false;
player.points = player.points + 15;
console.log(player);
// object์ property๋ฅผ ์ถ๊ฐํ ์ ์๋ค.
player.lastName = "kim";
console.log(player)
player๋ฅผ const๋ก ์ ์ธํ๋๋ฐ object์์๋ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋๋ฐ, ๊ทธ๊ฒ์ const๋ก ์ ์ธํ object(player)๋ ์์ง๋ ๋์ผํ๋ฉฐ, ๊ทธ ์์ ์๋ property์ ๊ฐ์ด ๋ณ๊ฒฝ๋์๊ธฐ ๋๋ฌธ์ object์๋ ์ํฅ์ ๋ผ์น์ง ์๋ ๊ฒ์ด๋ค.
const๋ก ์ ์ธ๋ object๋ฅผ ์ง์ ์ ์ผ๋ก ๋ณ๊ฒฝ(์๋ฅผ ๋ค์ด player = false; ์ ๊ฐ์ด ๋ณ๊ฒฝํ์ ๋)ํ์ ๋๋ง ์ค๋ฅ๊ฐ ์๊ธด๋ค.
'javascript > ๋ฐ๋๋ผ JS๋ก ํฌ๋กฌ ์ฑ ๋ง๋ค๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
DAY 8 (0) | 2023.01.03 |
---|---|
DAY 5 (0) | 2022.12.30 |
DAY 4 (0) | 2022.12.30 |
DAY 3 (0) | 2022.12.28 |
DAY 1 (0) | 2022.12.27 |