[๐Ÿ’ป ์ฝ”๋“œ์Šคํ…Œ์ด์ธ  FE 44๊ธฐ] ๋ถ€ํŠธ์บ ํ”„ - Javascript ํƒ€์ž…, ๋ณ€์ˆ˜

JiEunยท2023๋…„ 2์›” 20์ผ
0
post-thumbnail

โœ”๏ธ ์‹œ์ž‘

์˜ค๋Š˜ ๋ถ€ํ„ฐ Javascript๋ฅผ ์‹œ์ž‘ํ•œ๋‹ค.
Javascript tring, Number, Boolean, ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž,๋ณ€์ˆ˜ ๋“ฑ์„ ๋ฐฐ์› ๋‹ค.
๋งˆ์ง€๋ง‰์—” ์ œ์‹œํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํŽ˜์–ด๋ถ„๊ณผ ๊ฐ™์ด ํ‘ธ๋Š” ํ™œ๋™๋„ ์žˆ๋‹ค.


๐Ÿ“ Javascript

console.log()

๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์ฝ˜์†”์ด๋‚˜ ํ„ฐ๋ฏธ๋„์— ์›ํ•˜๋Š” ๊ฐ’์„ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ฃผ๋Š” ๋ฉ”์„œ๋“œ

console.log("Hello"); // Hello

์ฃผ์„

์ฝ”๋“œ์— ๋ฉ”๋ชจํ•˜๊ธฐ ์œ„ํ•œ ์ˆ˜๋‹จ

//์ฝ”๋“œ์— ๋Œ€ํ•œ ์„ค๋ช…(ํ•œ์ค„๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค.)
/*
* ์—ฌ๋Ÿฌ ์„ค๋ช…๋ฌธ์„ ์ž‘์„ฑํ•  ๋•Œ ์‚ฌ์šฉ
* ์—ฌ๋Ÿฌ ์„ค๋ช…๋ฌธ์„ ์ž‘์„ฑํ•  ๋•Œ ์‚ฌ์šฉ
*/

๐Ÿ“ Type(ํƒ€์ž…)

โœ”๏ธ String(๋ฌธ์ž์—ด)

๋”ฐ์˜ดํ‘œ(''), ์Œ๋”ฐ์˜ดํ‘œ(""), ๋ฐฑํ‹ฑ(``)๋กœ ๊ฐ์‹ธ์ง„ ๋‚ด์šฉ์„ String(๋ฌธ์ž์—ด)์ด๋ผ๊ณ  ํ•œ๋‹ค.

console.log('Hello Jieun');
console.log("28"); // ์ˆซ์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ํ‘œ์‹œํ•  ๊ฒฝ์šฐ ''๋˜๋Š” ""์œผ๋กœ ๊ฐ์‹ธ์ค˜์•ผํ•œ๋‹ค.

- String์˜ ์ฃผ์š” ์†์„ฑ

length

๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

console.log("์•ˆ๋…•".length); // 2
console.log("Hello word".length); // 10

โ—๏ธpoint

  • ์ˆซ์ž๋Š” ๊ธธ์ด๊ฐ€ ์—†์–ด ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค.

index

๊ฐ ๋ฌธ์ž๊ฐ€ ๋ช‡ ๋ฒˆ์งธ์— ์œ„์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

let name = "choi ji eun";
console.log(name[0]) // c
console.log(name[3]) // i

โ—๏ธpoint

  • ์ œ๋กœ๋ฒ ์ด์Šค ๋„˜๋ฒ„๋ง : ์ปดํ“จํ„ฐ๋Š” 1์ด ์•„๋‹Œ 0๋ถ€ํ„ฐ ์ˆซ์ž๋ฅผ ์„ผ๋‹ค.

String์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ

toLowerCase()

๋ฌธ์ž์—ด์„ ์†Œ๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ

console.log("Hello".toLowerCase()); // hello

toUpperCase()

๋ฌธ์ž์—ด์„ ๋Œ€๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ

console.log("Hello".toUpperCase()); // HELLO

concat()

๋ฌธ์ž์—ด์„ ์„œ๋กœ ์—ฐ๊ฒฐ

console.log("Hello ".concat("world")); // Hello world

slice()

๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ฅผ ์ž๋ฅธ๋‹ค.

console.log("Hello ".slice(0,2)); // He
console.log("Hello ".slice(0,4)); // Hell
// ์•ž์— 0์„ ์ž‘์„ฑํ•ด ์ค˜์•ผ ๊ธ€ ์ „์ฒด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฑฐ ๊ฐ™๋‹ค.

indexOf()

๋ฌธ์ž์—ด ๋‚ด์— ํŠน์ • ๋ฌธ์ž๊ฐ€ ๋ช‡๋ฒˆ์งธ์— ์œ„์น˜ํ•˜๋Š”์ง€ ํ™•์ธ

  • ์ฐพ๋Š” ๋ฌธ์ž๊ฐ€ 2๊ฐœ ์ด์ƒ์ผ ๊ฒฝ์šฐ ๊ฐ€์žฅ ์•ž์— ์žˆ๋Š” ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์กฐํšŒ
    (ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ๋ฌด์กฐ๊ฑด -1์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฑฐ ๊ฐ™๋‹ค.)
"ABCD".indexOf("B") // 1
"ABCD".indexOf("C") // 2
"ABCD".indexOf("E") // -1

includes()

๋ฌธ์ž์—ด ๋‚ด์— ํŠน์ •ํ•œ ๋ฌธ์ž๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ

"ABCD".includes("B") // true
"ABCD".includes("E") // false

โœ”๏ธ Number(์ˆซ์ž)

์ˆซ์ž๋ฅผ ํ‘œํ˜„ (์ •์ˆ˜, ์‹ค์ˆ˜, ์Œ์ˆ˜)

- Number์— ์‚ฌ์šฉํ•˜๋Š” Math ๋ฉ”์„œ๋“œ

Math.floor()

์ˆซ์ž๋ฅผ ๋‚ด๋ฆผ

Math.floor(2.6) // 2

Math.ceil()

์ˆซ์ž๋ฅผ ์˜ฌ๋ฆผ

Math.ceil(2.6) // 3

Math.round()

์ˆซ์ž๋ฅผ ๋ฐ˜์˜ฌ๋ฆผ

Math.round(2.6) // 3
Math.round(2.4) // 2

Math.abs()

์ˆซ์ž๋ฅผ ์ ˆ๋Œ€ ๊ฐ’์œผ๋กœ

Math.abs(-2) // 2

Math.sqrt()

์ˆซ์ž๋ฅผ ๋ฃจํŠธ๊ฐ’์œผ๋กœ

Math.sqrt(4) // 2
Math.sqrt(2) // 1.412...

Math.pow()

๊ด„ํ˜ธ์•ˆ ์ฒซ๋ฒˆ์งธ ์ˆซ์ž๋Š” ๋ฐ‘, ๋‘๋ฒˆ์งธ ์ˆซ์ž๋Š” ์ง€์ˆ˜์ธ ์ˆซ์ž๋กœ
(์ œ๊ณฑ์„ ์ƒ๊ฐํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.)

Math.pow(2, 5) // 32

โœ”๏ธ Boolean(์ฐธ, ๊ฑฐ์ง“)

์‚ฌ์‹ค๊ด€๊ณ„๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ํƒ€์ž… (์ฐธ, ๊ฑฐ์ง“)

falsy

flase๋กœ ์—ฌ๊ฒจ์ง€๋Š” ๊ฐ’์ด ์žˆ๋Š”

truthy

true๋กœ ์—ฌ๊ฒจ์ง€๋Š” ๊ฐ’์ด ์žˆ๋Š”

โ—๏ธpoint

truthy๋Š” ๋งŽ๊ธฐ์— falsy ๊ฐ’์„ ์•”๊ธฐํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค.

//falsy ๋Œ€ํ‘œ์ ์ธ ๊ฐ’
0, -0, 0n, "", '', ``, null, undefinde, NaN

โœ”๏ธ ๋น„๊ต์—ฐ์‚ฐ์ž

๋‘ ๊ฐ’์ด ๊ฐ™์€์ง€ ๋‹ค๋ฅธ์ง€ ํ™•์ธํ•  ๋•Œ ์œ ์šฉํ•˜๋‹ค.

===

์—„๊ฒฉํ•œ ๋™์น˜ ์—ฐ์‚ฐ์ž, ๋‘ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ ๊ฐ’์˜ ํƒ€์ž…์ด ๊ฐ™์œผ๋ฉด true, ๋‹ค๋ฅด๋ฉด false

12 === (10 + 2); // true
12 === "12"; // false

!==

์—„๊ฒฉํ•œ ๋™์น˜ ์—ฐ์‚ฐ์ž, ๋ณด์ด๋Š” ๊ฐ’์ด ๊ฐ™์•„๋„ ๋‘ ๊ฐ’์˜ ํƒ€์ž…์ด ๋‹ค๋ฅด๋ฉด false

12 !== (10 + 2); // false
12 !== "12"; // true

โ—๏ธpoint

==, !==๋Š” ์—๋Ÿฌ๊ฐ€ ์žˆ๊ธฐ์— ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค.

โœ”๏ธ ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž

๋‘ ๊ฐ’์˜ ๋…ผ๋ฆฌ ๊ด€๊ณ„๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

&& (๋…ผ๋ฆฌ๊ณฑ AND)

์กฐ๊ฑด ๊ฐ’ ๋ชจ๋‘ true์—ฌ์•ผ true๋กœ, ํ•˜๋‚˜๋ผ๋„ false์ธ ๊ฒฝ์šฐ false๋กœ ํŒ๋‹จ

true && true // true
true && false // false
false && true // false
false && false // false

|| (๋…ผ๋ฆฌํ•ฉ OR)

์กฐ๊ฑด ๊ฐ’ ์ค‘ ํ•˜๋‚˜๋งŒ true์—ฌ๋„ true๋กœ ํŒ๋‹จ

true || true // true
true || false // true
false || true // true
false || false // false

! (๋ถ€์ • NOT)

์‚ฌ์‹ค ๊ด€๊ณ„๋ฅผ ๋ฐ˜๋Œ€๋กœ ํ‘œํ˜„

!true // false
!false //true
!(1 > 2) // true

๐Ÿ“ ๋ณ€์ˆ˜ ์„ ์–ธ, ํ• ๋‹น

โœ”๏ธ ๋ณ€์ˆ˜

ํŠน์ • ๋ฐ์ดํ„ฐ์— ์ด๋ฆ„์„ ๋ถ™์ด๋Š” ๊ฒƒ

๋ณ€์ˆ˜์„ ์–ธ

ํŠน์ • ๋ฐ์ดํ„ฐ๋ฅผ ์ปดํ“จํ„ฐ๊ฐ€ ๊ธฐ์–ตํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ํ™•๋ณด ํ›„ ํ•ด๋‹น ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์ด๋ฆ„์„ ๋ถ€์—ฌํ•œ๋‹ค.
ํ• ๋‹น ์—ฐ์‚ฐ์ž=๋ฅผ ์ด์šฉํ•ด ์ด๋ฆ„์„ ๋ถ€์—ฌํ•œ๋‹ค.

let name; //๋ณ€์ˆ˜์„ ์–ธ
name = "jieun"; //๊ฐ’ ํ• ๋‹น
//ํ•œ์ค„๋กœ ํ‘œ๊ธฐ ๊ฐ€๋Šฅํ•˜๋‹ค.
let name = "jieun";

โ—๏ธpoint

  • ์•„๋ฌด๊ฒƒ๋„ ํ• ๋‹นํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ undefied๋กœ ํ• ๋‹น๋œ๋‹ค.
let name;
console.log(name); // undefied

โœ”๏ธ const(์ƒ์ˆ˜)

๋ณ€ํ•˜์ง€ ์•Š๋Š” ๊ฐ’
์ดˆ๋ฐ˜์— const๋กœ ์ž‘์„ฑํ•˜๋‹ค ์žฌํ• ๋‹น์ด ํ•„์š”ํ•  ๋•Œ let์œผ๋กœ ๋ณ€๊ฒฝํ•ด ์ค€๋‹ค.

const name = "JiEun";
name = "Choi" // ์žฌํ• ๋‹น x

โœ”๏ธ let(๋ณ€์ˆ˜)

์ƒˆ๋กœ์šด ๊ฐ’์„ ์žฌํ• ๋‹น ํ•  ์ˆ˜ ์žˆ๋‹ค.

let name = "JiEun";
name = "Choi" // ์žฌํ• ๋‹น o

โ—๏ธpoint

var์˜ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๊ณ  ์ƒ๊ธด๊ฒŒ let, const์ด๋‹ค.
var๋Š” ์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด ํ˜„์žฌ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

๐Ÿ“ ๋„ค์ด๋ฐ ๊ทœ์น™

  • ํŠน์ˆ˜ ๋ฌธ์ž๋ฅผ ์ œ์™ธํ•œ ๋ฌธ์ž, ์ˆซ์ž, ์–ธ๋”์Šค์ฝ”์–ด(_), ๋‹ฌ๋Ÿฌ๊ธฐํ˜ธ($)๋ฅผ ํ‘œ์‹œํ•จ
let name, $name, _name;
  • ์ˆซ์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์€ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
let 1name;
  • ์˜ˆ์•ฝ์–ด๋Š” ์‹๋ณ„์ž๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.
let, const, true, false, typeof ๋“ฑ
  • ๋ณ€์ˆ˜๋ช…์€ ๋ณ€์ˆ˜์˜ ์กด์žฌ ๋ชฉ์ ์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์˜๋ฏธ๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ํ‘œ์‹œํ•œ๋‹ค.
// ๋ณ€์ˆ˜์˜ ์กด์žฌ ๋ชฉ์ ์„ ์ดํ•ด ํ•  ์ˆ˜ ์—†๋Š”
let x = "Ji Eun";
let y = 28;
// ๋ณ€์ˆ˜์˜ ์กด์žฌ ๋ชฉ์ ์„ ๋ช…ํ™•ํžˆ ์•Œ ์ˆ˜ ์žˆ๋Š”
let name = "Ji Eun";
let age = 28;

๐Ÿ“ ๋„ค์ด๋ฐ ์ปจ๋ฒค์…˜

Javascript์—์„œ ๋„ค์ด๋ฐ์„ ์ž‘์„ฑํ•  ๋•Œ ๋„์–ด์“ฐ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋„ค์ด๋ฐ ์ปจ๋ฒค์…˜์„ ์‚ฌ์šฉํ•ด ๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

โœ”๏ธ ๋„ค์ด๋ฐ ์ผ€์ด์Šค

firstName // ์นด๋ฉœ์ผ€์ด์Šค(๋‚™ํƒ€ ํ‘œ๊ธฐ๋ฒ•_๊ฐ€์žฅ ์ž์ฃผ ์‚ฌ์šฉํ•จ)
first_name // ์Šค๋„ค์ดํฌ ์ผ€์ด์Šค(๋‹จ์–ด ์‚ฌ์ด์— `_`๋ฅผ ํ‘œ์‹œ)
FirstName // ํŒŒ์Šค์นผ ์ผ€์ด์Šค(๋‹จ์–ด ์‹œ์ž‘์„ ๋Œ€๋ฌธ์ž๋กœ ํ‘œ์‹œ)

๐Ÿ“ ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด

๋ฒกํ‹ฑ๊ธฐํ˜ธ(``)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹, ๋ฌธ์ž์—ด ๋‚ด๋ถ€์— ๋ณ€์ˆ˜๋ฅผ ์‚ฝ์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ๋ฒกํ‹ฑ๊ธฐํ˜ธ(``)๋กœ ๋ชจ๋‘ ๊ฐ์‹ธ์ค€๋‹ค.
  • ๋ณ€์ˆ˜๋Š”${๋ณ€์ˆ˜๋ช…}์œผ๋กœ ์ž‘์„ฑํ•œ๋‹ค.
let name = "Ji Eun";
let age = 28;
console.log(`์•ˆ๋…•ํ•˜์„ธ์š”. ์ด๋ฆ„์€ ${name}์ด๊ณ  ์˜ฌํ•ด ${age}์‚ด ์ž…๋‹ˆ๋‹ค.`);
// ์•ˆ๋…•ํ•˜์„ธ์š” ์ด๋ฆ„์€ Ji Eun์ด๊ณ  ์˜ฌํ•ด 28์‚ด ์ž…๋‹ˆ๋‹ค.

โ—๏ธpoint

ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ€๋…์„ฑ์„ ๋†’ํž ์ˆ˜ ์žˆ๋‹ค. '์•ˆ๋…•'+name+ ์€ ๋‚ด์šฉ์ด ๊ธธ์–ด ์งˆ ๊ฒฝ์šฐ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ง„๋‹ค.


โœ๏ธ ๋งˆ์น˜๋ฉฐ

javascrip์˜ string, number, boolean์€ ์•Œ๊ณ  ์žˆ์—ˆ์ง€๋งŒ ์‚ฌ์šฉ ๋˜๋Š” ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•ด ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.

๋„ค์ด๋ฐ ์ผ€์ด์Šค๋Š” ๋‚™ํƒ€ ํ‘œ๊ธฐ๋ฒ•๋งŒ ์•Œ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์—ฌ๋Ÿฌ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๊ณ  ${๋ณ€์ˆ˜๋ช…}์„ ์ด์šฉํ•œ ํ‘œํ˜„์˜ ์ •ํ™•ํ•œ ๋ช…์น˜๋„ ์•Œ๊ฒŒ๋˜์—ˆ๋‹ค.

์ด๋ฒˆ ํŽ˜์–ด ํ™œ๋™์€ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ํ˜•์‹์ด ์žˆ๋Š”๋ฐ ์ƒ๊ฐ ๋ณด๋‹ค ์–ด๋ ค์› ๋‹ค...
๋ถ„๋ช… ์•Œ๊ณ  ์žˆ๋Š” ๋‚ด์šฉ์ธ๋ฐ ๊ทธ๊ฑธ ๊ธ€๋กœ ํ’€์–ด์„œ ์ž‘์„ฑ ๋˜์–ด์žˆ์œผ๋‹ˆ ์‚ด์ง ๋ฉ˜๋ถ•์ด์˜€๋‹ค.
๊ฐ™์ด ์ง„ํ–‰ํ•œ ํŽ˜์–ด๋ถ„ ๋•๋ถ„์— ์ˆ˜์›”ํ•˜๊ฒŒ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.ใ… ใ… 

ํŽ˜์–ด๋ถ„๊ป˜ ๋„์›€์ด ๋˜์ง€ ๋ชปํ•œ๊ฑฐ ๊ฐ™์ด ์ฃ„์†กํ•˜๊ธฐ๋„ ํ•˜๊ณ 
๊ธ€๋กœ ํ’€์–ด์ ธ ์žˆ๋Š” ๋ฌธ์ œ ํ‘ธ๋Š” ๋ฐฉ์‹์ด ๋ฏธํกํ•˜๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค.

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๊ฐ€ ์ด๋Ÿฐ ๋Š๋‚Œ์œผ๋กœ ๋˜์–ด์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.
์‹œ๊ฐ„์ด ๋  ๋•Œ ๋งˆ๋‹ค ์ผ์ฃผ์ผ์— 2๊ฐœ์”ฉ์ด๋ผ๋„ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ํ’€์–ด ๋ณด๋ฉฐ ๋…ผ๋ฆฌ์  ์‚ฌ๊ณ ๋ฅผ ๊ธธ๋Ÿฌ์•ผ๊ฒ ๋‹ค.

๊ณต๋ถ€ํ•  ๋•Œ ์ฐธ๊ณ ํ•˜๊ธฐ ์ข‹์€ ์‚ฌ์ดํŠธ

๐Ÿ”— https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Math

profile
๐Ÿ’ป ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๋ชฉํ‘œ๋กœ ์„ฑ์žฅ ์ค‘! (์•Œ์•„๋ดค๋˜ ๋‚ด์šฉ ๋“ฑ์„ ์ •๋ฆฌํ•˜๊ธฐ)

0๊ฐœ์˜ ๋Œ“๊ธ€