๐Ÿ“ข TIL) Java Script์˜ variable(๋ณ€์ˆ˜)

Solmiiยท2020๋…„ 4์›” 22์ผ
2

JavaScript

๋ชฉ๋ก ๋ณด๊ธฐ
2/24
post-thumbnail

๐Ÿ“ข variable let

๐Ÿ‘„โœ๏ธ Variable์€ read ์ฝ๊ณ , write ์“ฐ๊ธฐ๊ฐ€ ๋ชจ๋‘ ๊ฐ€๋Šฅ!

variable (๋ณ€์ˆ˜)๋ฅผ ์„ ์–ธํ•˜๋Š” let

๐Ÿ’๐Ÿปโ€โ™€๏ธ JS์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ• ๋•Œ๋Š” let์ด๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค! (ES6์— ์ถ”๊ฐ€๋œ ๊ธฐ๋Šฅ)

let name = "solmi";
console.log(name);
name = "hello";
console.log(name);

โ˜๏ธJS์—์„œ let์„ ์ž…๋ ฅํ•˜๊ณ  name์ด๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ ํ›„, ๊ทธ ์•ˆ์— solmi๋ผ๋Š” ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ํ• ๋‹นํ•œ๋‹ค!
โœŒ๏ธname์ด๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ๋‹ค์‹œ ์„ ์–ธํ•˜๊ณ , ์ด๋ฒˆ์—๋Š” hello๋ผ๋Š” ๊ฐ’์„ ํ• ๋‹นํ•œ๋‹ค!
๋ธŒ๋ผ์šฐ์ €์˜ ๊ฒ€์‚ฌ(๊ฐœ๋ฐœ์ž ๋„๊ตฌ) - console ๊ธฐ๋Šฅ์„ ์ด์šฉํ•ด๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋œฌ๋‹ค!!

๐Ÿคท๐Ÿปโ€โ™€๏ธ ๊ทธ๋ž˜์„œ ๋ฌด์Šจ์ผ์ด ์ผ์–ด๋‚ฌ๋‹ค๋Š” ๊ฑฐ์ž„?
1. ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋ฉด, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๋งˆ๋‹ค ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ• ๋‹น๋œ๋‹ค.
(ํ……ํ…… ๋น„์–ด์žˆ๋Š” ๋ฐ•์Šค์ด๋ฉฐ, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋งˆ๋‹ค ์ด ๋ฐ•์Šค๊ฐ€ ์ œํ•œ์ ์œผ๋กœ ํ• ๋‹น๋จ)

2. let name ์ด๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ฒŒ ๋˜๋ฉด, ํ•˜๋‚˜์˜ ๋ฐ•์Šค๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ํฌ์ธํ„ฐ๊ฐ€ ์ƒ๊ธฐ๋ฉฐ, ๊ทธ ํฌ์ธํ„ฐ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋ฐ•์Šค์— solmi๋ผ๋Š” ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค.

3. โœŒ๏ธ์—์„œ name ์˜ ๋ณ€์ˆ˜๊ฐ’์„ hello๋กœ ๋ฐ”๊พธ๋ฉด, solmi๋กœ ์ €์žฅ๋˜์–ด ์žˆ๋˜ ๊ฐ’์ด hello๋กœ ๋ฐ”๋€Œ๊ฒŒ ๋œ๋‹ค.
(์ฐจ์ง€ํ•˜๊ณ  ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ๋Š” ๊ทธ๋Œ€๋กœ)


๐ŸŒš Block Scope VS ๐ŸŒ Global Scope

Block Scope

{
let name = "solmi";
console.log(name);
name = "hello";
console.log(name);
}
console.log(name);

{ }๋กœ ์ฝ”๋“œ๋ฅผ ๊ฐ์‹ธ๋ฉด block์ด ๋œ๋‹ค.
block { } ๋ฐ–์—์„œ console.log(name); ์ด๋ผ๊ณ  ๋ช…๋ นํ•ด๋„, ๊ฒฐ๊ณผ๋Š” ์•„๋ฌด ๊ฐ’๋„ ์ถœ๋ ฅ๋˜์ง€ ์•Š๋Š”๋‹ค.
block ๋ฐ–์—์„œ ์ž‘์„ฑํ•œ ๋‚ด์šฉ์€ block ์•ˆ์˜ ๋‚ด์šฉ์„ ๋ณผ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ!

Global Scope

let globalName = "global name";

block { }์„ ์“ฐ์ง€ ์•Š๊ณ  ํŒŒ์ผ ์•ˆ์— ๋ฐ”๋กœ ์ •์˜ํ•ด์„œ ์ž‘์„ฑํ•˜๋Š”๊ฒƒ์„ ๋งํ•œ๋‹ค.
์–ด๋Š ๊ณณ์—์„œ๋‚˜ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— { }์•ˆ/๋ฐ–์—์„œ ์ž‘์„ฑํ•ด๋„ ๋ชจ๋‘ ์ถœ๋ ฅ๋œ๋‹ค.

โš ๏ธ Global Scope๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋œ ํ›„ ๋๋‚ ๋•Œ๊นŒ์ง€ ํ•ญ์ƒ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐจ์ง€ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์†Œํ•œ์œผ๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋ฉฐ, class๋‚˜ ํ•จ์ˆ˜(if, for๋ฌธ)๋“ฑ ์ •๋ง ํ•„์š”ํ•œ ๊ณณ์—์„œ๋งŒ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค!!


let ์ด์ „์— ์‚ฌ์šฉํ•˜๋˜ var?

๐Ÿ”ฅ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋Š” ํ‚ค์›Œ๋“œ๋Š” let ๋”ฑ ํ•˜๋‚˜์ด๋‹ค!!
(let์ด ๋‚˜์˜ค๊ธฐ ์ „์—๋Š” var๋ฅผ ์‚ฌ์šฉํ–ˆ์—ˆ์ง€๋งŒ, ์ด์ œ๋Š” ๋”์ด์ƒ NONO!!!!!)

๐Ÿคท๐Ÿปโ€โ™€๏ธ ์—ฅ? ์™œ? var ์“ฐ๋ฉด ๋ญ ํฐ์ผ์ด๋ผ๋„ ๋‚˜๋‚จ~?ใ…Ž

์Œ์ฒญ๋‚œ ํฐ์ผ์ด ๋‚œ๋‹ค......
๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ  ๋‚˜์„œ ๊ฐ’์„ ํ• ๋‹นํ•˜๋Š”๊ฒŒ ์ผ๋ฐ˜์ ์ด์ง€๋งŒ, JavaScript์˜ var ๋Š” ๋ฏธ์นœ ํ–‰๋™์„ ํ•  ์ˆ˜ ์žˆ๋‹ค....

๋ฐ”๋กœ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ ํ•˜๊ธฐ๋„ ์ „์— ๊ฐ’์„ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๊ณ , ์‹ฌ์ง€์–ด ๊ฐ’์„ ํ• ๋‹นํ•˜๊ธฐ๋„ ์ „์— ์ถœ๋ ฅํ•  ์ˆ˜๊ฐ€ ์žˆ๋‹ค.

console.log(age);
age = 4;
var age;

์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ•œ ํ›„์—, ์ด๊ฑธ ๋ธŒ๋ผ์šฐ์ € ๊ฒ€์‚ฌ(๊ฐœ๋ฐœ์ž ๋„๊ตฌ) - console์—์„œ ํ™•์ธํ•ด๋ณด๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ?
๋ ์šฉ~๐Ÿ˜ณ ๋ณ€์ˆ˜ ์„ ์–ธ ์ „์—+๊ฐ’ ํ• ๋‹นํ•˜๊ธฐ ์ „์—+์ถœ๋ ฅ๋ถ€ํ„ฐ ๋ฐ”๋กœ ๋•Œ๋ ธ๋Š”๋ฐ ์นœ์ ˆํ•˜๊ฒŒ ๊ฐ’์ด ์•„์ง ํ• ๋‹น๋˜์ง€ ์•Š์€ ๋ณ€์ˆ˜๋ผ๊ณ  ์•Œ๋ ค์ค€๋‹ค.....

(๋‚ด์ผ ๋‹ค์‹œ ์ •๋ฆฌํ• ๊ฑฐ์ง€๋งŒ, undefined๋Š” Error๊ฐ€ ์•„๋‹ˆ๋ผ ๋ณ€์ˆ˜๋Š” ์„ ์–ธ๋˜์—ˆ์ง€๋งŒ ๊ฐ’์€ ์•„์ง ์ž…๋ ฅ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” ๋งํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‹ˆ๊นŒ ๋ณ€์ˆ˜ ์„ ์–ธ๋„ ์ „์— ์ถœ๋ ฅ๋ถ€ํ„ฐ ๋•Œ๋ฆฌ๋Š” ๋ฏธ์นœ์ง“์„ ํ–ˆ๋Š”๋ฐ ๋„ˆ๊ทธ๋Ÿฝ๊ฒŒ๋„ ์•„์ง ๊ฐ’์ด ์ž…๋ ฅ๋˜์ง€ ์•Š์€ ๋ณ€์ˆ˜๋ผ๊ณ  ์ณ์ค€๋‹ค.)
(๋งˆ์น˜ ์‹œํ—˜ํ’€๋•Œ ์‹œํ—˜์ง€์—๋งŒ ์ •๋‹ต ์ฒดํฌํ•˜๊ณ  OMR์€ 1๋„ ๋งˆํ‚น ์•ˆํ•œ์ฑ„ ๋ƒˆ๋Š”๋ฐ๋„ ๋‚˜์ค‘์— OMR์— ๋‹ค์‹œ ๋งˆํ‚นํ•˜๋ผ๋ฉด์„œ ์ •๋‹ต์œผ๋กœ ์ธ์ •ํ•ด์ฃผ๋Š” ๊ฑฐ์ž„. ์–ด...์•„๋‹Œ๊ฐ€?)


๐Ÿคท๐Ÿปโ€โ™€๏ธ ๊ทธ๋ ‡๋‹ค๋ฉด let์€ ๋ญ๊ฐ€ ๋‹ค๋ฅผ๊นŒ?

console.log(age);
age = 4;
let name;

let์„ ์„ ์–ธํ•˜๊ธฐ๋„ ์ „์— ๊ฐ’์„ ๋„ฃ์—ˆ๋‹ค๊ณ  ํ˜ผ์ญ์„ error๋ฅผ ๋„์šด๋‹ค!


var๋ฅผ ์“ฐ๋ฉด ์•ˆ๋˜๋Š” ์ด์œ !

์ด๋ ‡๊ฒŒ var์™€ let์—์„œ ๊ฐ™์€ ๊ฐ’์„ ์ž…๋ ฅํ–ˆ์Œ์—๋„, ๋ˆ„๊ตฌ๋Š” ์ถœ๋ ฅ๋˜๊ณ  ๋ˆ„๊ตฌ๋Š” Error๊ฐ€ ๋œจ๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ?
๊ทธ๋ฆฌ๊ณ  ๋ฌด์—‡๋•Œ๋ฌธ์— var๋ฅผ ์“ฐ์ง€ ๋ง๋ผ๊ณ  ํ•˜๋Š” ๊ฑธ๊นŒ?

โ˜๏ธvar hoisting ๋•Œ๋ฌธ์— global scope์— ๋ณ€์ˆ˜/ํ•จ์ˆ˜๋ฅผ ์„ ์–ธํ•  ๊ฒฝ์šฐ ์•„๋ฌด๋ฆฌ ์•„๋ž˜์— ์„ ์–ธํ•ด๋„ ์ œ์ผ ์œ„๋กœ ์˜ฌ๋ผ๊ฐ€๋ฒ„๋ฆฐ๋‹ค!

๐Ÿ˜ณ hoisting (๋Œ์–ด์˜ฌ๋ ค์ฃผ๋‹ค) : move declaration from bottom to top
= ๋ณ€์ˆ˜/ํ•จ์ˆ˜๋ฅผ ์–ด๋””์— ์„ ์–ธํ–ˆ๋Š”์ง€์™€ ์ƒ๊ด€์—†์ด, ํ•ญ์ƒ ์ œ์ผ ์œ„๋กœ ๋ณ€์ˆ˜/ํ•จ์ˆ˜์„ ์–ธ์„ ๋Œ์–ด์˜ฌ๋ ค์ฃผ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.

(๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ฝ”๋“œ๊ฐ€ ๋Œ์–ด์˜ฌ๋ ค์ง€๋Š”๊ฒƒ์ด ์•„๋‹ˆ๋ผ, JavaScript Parser ๋‚ด๋ถ€์ ์œผ๋กœ ๋Œ์–ด์˜ฌ๋ ค์„œ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. hoisting์„ ํ™œ์šฉํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์ง€๋งŒ, ํ†ต์ƒ์ ์œผ๋กœ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์•ˆ์ข‹์•„์ง€๋ฏ€๋กœ ๋˜๋„๋ก ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๊ฒƒ์ด ์ข‹๋‹ค.)

โœŒ๏ธvar๋Š” block scope๋ฅผ ์ฒ ์ €ํžˆ ๋ฌด์‹œํ•œ๋‹ค.

{
age = 8;
var age;
}
console.log(age); //8

์ด๋ ‡๊ฒŒ age๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ block ์•ˆ์— ์„ ์–ธํ–ˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ , block ๋ฐ–์—์„œ age๋ฅผ ์ถœ๋ ฅํ•ด๋ณด๋ฉด ์ •์ƒ์ ์œผ๋กœ 8์ด๋ผ๋Š” ๊ฐ’์ด ๋‚˜์˜จ๋‹ค.

โ‡’ ๐Ÿ’๐Ÿปโ€โ™€๏ธ ์ดˆ์ฐฝ๊ธฐ์—๋Š” ์ด๋Ÿฌํ•œ ์œ ์—ฐ์„ฑ์„ ํ™œ์šฉํ•˜์—ฌ ์‰ฝ๊ฒŒ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋š๋”ฑ ๋งŒ๋“ค ์ˆ˜ ์žˆ์—ˆ๋Š”๋ฐ, ์ ์  ํ”„๋กœ์ ํŠธ์˜ ๊ทœ๋ชจ๊ฐ€ ์ปค์ง€๋ฉด์„œ ๋‚˜์ค‘์—๋Š” ์„ ์–ธํ•˜์ง€๋„ ์•Š์€ ๊ฐ’์ด ๋ฉ‹๋Œ€๋กœ ์ถœ๋ ฅ๋˜๋Š”๋“ฑ์˜ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ฌธ์ œ์ ์ด ์ƒ๊ฒจ๋‚˜๊ฒŒ ๋œ๋‹ค.

โ‡’ ์ด๋Ÿฌํ•œ var์˜ ์œ„ํ—˜๋ถ€๋‹ด ๋•Œ๋ฌธ์— let์ด ๋“ฑ์žฅํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค! ๋‘๋‘ฅํƒ!๐Ÿฅ


โš ๏ธ ํ•˜.์ง€.๋งŒ...

let์ด๋ผ๊ณ  ๋ฌด์กฐ๊ฑด ๋งŒ๋Šฅ์ธ๊ฒƒ์€ ์•„๋‹ˆ๋‹คใ… ใ…  ๊ทธ ์ด์œ ๋Š” ๋ฐ”๋กœ ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜!

๋‹คํ–‰ํžˆ ๋Œ€๋ถ€๋ถ„์˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž˜ ์ง€์›๋˜์ง€๋งŒ, ์šฐ๋ฆฌ ๋ชจ๋‘์˜ ๊ณ ํ†ต์ธ IE์—์„œ๋Š”(microsoft manghaera) ์ œ์ผ ์ตœ์‹  ๋ฒ„์ „์—์„œ๋„ es6์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค.....

๊ทธ๋ž˜์„œ IE์—๋„ ๊ผญ ์„œ๋น„์Šคํ•ด์•ผ ํ•œ๋‹ค๋ฉด!
es6 ์ด์ƒ์œผ๋กœ ๊ฐœ๋ฐœํ•œ ํ›„์—, BABEL์„ ์ด์šฉํ•˜์—ฌ es5๋‚˜ es4๋กœ ๋ฐฐํฌํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค. es5๋Š” ๋‹คํ–‰ํžˆ IE๋†ˆ๋„ ์ตœ์‹ ๋ฒ„์ „์—์„œ๋Š” ์ง€์›๋œ๋‹ค....

๊ทธ๋ ‡์ง€๋งŒ, IE๋Š” ์ „์„ธ๊ณ„์ ์œผ๋กœ 1.71%์˜ ์‚ฌ๋žŒ๋“ค๋งŒ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, IE ๊ฐ•๊ตญ์ธ ์šฐ๋ฆฌ๋‚˜๋ผ์—์„œ๋„ 7.79%๋งŒ ์‚ฌ์šฉ์ค‘์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ณ„์†ํ•ด์„œ ์ค„์–ด๋“ค๊ณ  ์žˆ๋‹ค.๐Ÿคฎ (๋Œ€์ถฉ IE๋Š” ์ด์ œ ๊ทธ๋งŒ ๋ฌด์‹œํ•˜์ž๋Š” ๋‚ด์šฉ)


๐Ÿ“ข Constant const

๐Ÿ‘„ Constant์€ read ์ฝ๊ธฐ๋งŒ ๊ฐ€๋Šฅ!

Constant๋ฅผ ์„ ์–ธํ•˜๋Š” const

const daysInWeek = 7;
const maxNumber = 5;

Variable๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๋งˆ๋‹ค ํ• ๋‹น๋œ ๋นˆ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ฐ€๋ฅดํ‚ค๋ฉฐ ํฌ์ธํ„ฐ๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ๊ณ„์† ๋ฐ”๊ฟ”๋‚˜๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฐ˜๋ฉด์—, Constants๋Š” ๊ฐ’์„ ์„ ์–ธ+ํ• ๋‹นํ•œ ํ›„์—๋Š” ์ ˆ๋Œ€ ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค!

๐Ÿ”“ Mutable VS ๐Ÿ”’ Immutable

  • Mutable Data Types : all objects by default are mutable in JS
    = ๊ฐ’์ด ๊ณ„์† ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋Š” type

  • Immutable Data Types : premitive types, frozen objects(Object.freeze())
    = ๊ฐ’์ด ์ ˆ๋Œ€ ๋ฐ”๋€Œ์ง€ ์•Š๋Š” type


    Constants๋Š” Immutable Data Types ์ด๋ฉฐ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ• ๋•Œ ์™ ๋งŒํ•˜๋ฉด Immutable Data Types๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ์ด ์ข‹๋‹ค.


    ๐Ÿ’๐Ÿปโ€โ™€๏ธ Immutable Data Types์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ์ด์œ 
  • security
    ํ•ด์ปค๋“ค์ด ์ฝ”๋“œ์˜ ๊ฐ’์„ ๋ฐ”๊พธ๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•œ๋‹ค.

  • thread safety
    ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋ฉด ํ•œ๊ฐ€์ง€์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ• ๋‹น๋˜๊ณ , ๊ทธ ํ”„๋กœ์„ธ์Šค ์•ˆ์—์„œ ๋‹ค์–‘ํ•œ thread๊ฐ€ ๋™์‹œ์— ๋Œ์•„๊ฐ€๊ฒŒ ๋œ๋‹ค.
    ์ด๋•Œ ์ด ๋‹ค์–‘ํ•œ thread๊ฐ€ ๋™์‹œ์— ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•ด์„œ ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๋Š” ์œ„ํ—˜์„ฑ์ด ์ƒ๊ธฐ๋Š”๋ฐ, ์ด๊ฒƒ์„ ๋ฐฉ์ง€ํ•œ๋‹ค.

  • reduce human mistakes
    ์•ž์œผ๋กœ ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ•  ๋” ์ข‹์€ ๋ฐฉ์•ˆ์ด ์—†๋‹ค๋ฉด, const ๋ฅผ ์ด์šฉํ•ด ์ž‘์„ฑํ•˜์—ฌ ๋ณธ์ธ ํ˜น์€ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ• ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•ด์ค€๋‹ค.

๐Ÿซ ๋ณ€์ˆ˜๋ช…์€ camel case๋กœ ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค.

let globalName = "global name";

camel case๋ž€ JS๊ฐ€ ๊ฐ–๊ณ ์žˆ๋Š” ๋ฌธ๋ฒ• ๊ทœ์น™์œผ๋กœ, ๋ณ€์ˆ˜๋ช…์€ ํ•ญ์ƒ ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๊ณ  ์ค‘๊ฐ„์— space๊ฐ€ ํ•„์š”ํ•˜๋ฉด space ๋Œ€์‹ ์— ๋Œ€๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ์„ ๋งํ•œ๋‹ค!
ex) days of week๋ผ๋Š” ๋ณ€์ˆ˜๋ช…์„ ์ง€์ •ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด -> daysOfWeek๋กœ ์ž‘์„ฑ! ๋‚™ํƒ€ ๋“ฑ์ฒ˜๋Ÿผ ์˜ค๋ฅด๋ฝ ๋‚ด๋ฆฌ๋ฝ


๊ฐœ๋ฐœ ์™•์ดˆ๋ณด ์ฝ”๋ฆฐ์ด์ž…๋‹ˆ๋‹ค!
์ด ๋‚ด์šฉ์€ ํ˜ผ์ž ๋™์˜์ƒ ๊ฐ•์˜&๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด ๋ฐฐ์šด ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์ œ๊ฐ€ ์ดํ•ดํ•˜๊ณ  ๋„˜์–ด๊ฐ„ ๊ฐœ๋…์ด ํ‹€๋ ธ๊ฑฐ๋‚˜ ๋” ๋ณด์ถฉํ•  ๊ฐœ๋…์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์‹œ๋ฉด ์ •๋ง ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!!

profile
ํ•˜๋ฃจ๋Š” ์น˜์—ดํ•˜๊ฒŒ ์ธ์ƒ์€ ์—ฌ์œ ๋กญ๊ฒŒ

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