πŸ“’ Jero's Review

πŸ”Ά ν•¨μˆ˜λž€?function add(x, y) { return x + y;}add(2, 5); // 7ν•¨μˆ˜λŠ” μž…λ ₯을 λ°›μ•„ 좜λ ₯으둜 λ³€ν™˜ν•˜λŠ” 일련의 과정을 μ •μ˜ν•œ μ½”λ“œμž…λ‹ˆλ‹€. ν•¨μˆ˜λ₯Ό 톡해 λ™μΌν•œ μž‘μ—…μ„ μ—¬λŸ¬ 번 λ°˜λ³΅ν•˜μ§€ μ•Šκ³  μž¬μ‚¬μš©ν•  수 μžˆμ–΄ μ½”λ“œμ˜ νš¨μœ¨μ„±μ„ 높일 수 μžˆμŠ΅λ‹ˆλ‹€. ν•¨μˆ˜λŠ” 일반적으둜 μž…λ ₯κ°’(인수)λ₯Ό λ§€κ°œλ³€μˆ˜λ‘œ λ°›μ•„ μ²˜λ¦¬ν•˜κ³ , κ²°κ³Όλ₯Ό λ°˜ν™˜κ°’μœΌλ‘œ λ°˜ν™˜ν•©λ‹ˆλ‹€. ν•¨μˆ˜λŠ” μ •μ˜λ˜κΈ°λ§Œ ν•˜κ³  ν˜ΈμΆœλ˜μ§€ μ•ŠμœΌλ©΄ μ‹€ν–‰λ˜μ§€ μ•ŠμœΌλ©°, ν•¨μˆ˜ ν˜ΈμΆœμ„ 톡해 μ‹€μ œλ‘œ λ™μž‘ ν•©λ‹ˆλ‹€. πŸ”Ά ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜λŠ” 이유 μ½”λ“œ μž¬μ‚¬μš©μ„± : λ™μΌν•œ μž‘μ—…μ„ λ°˜λ³΅ν•΄μ„œ μž‘μ„±ν•  ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€.μœ μ§€λ³΄μˆ˜μ˜ μš©μ˜μ„± : μ½”λ“œ μˆ˜μ • μ‹œ, ν•¨μˆ˜ λ‚΄λΆ€λ§Œ μˆ˜μ •ν•˜λ©΄ λ˜μ–΄ 관리가 μš©μ΄ν•©λ‹ˆλ‹€.가독성 ν–₯상 : λ³΅μž‘ν•œ μ½”λ“œκ°€ ν•¨μˆ˜ν™”λ˜λ©΄ 읽기 μ‰½κ²Œ λ©λ‹ˆλ‹€.μ‹ λ’°μ„± :..
πŸ”Ά μ›μ‹œ κ°’λ³€κ²½ λΆˆκ°€λŠ₯ν•œ κ°’μ›μ‹œ 값은 ν•œ 번 μƒμ„±λ˜λ©΄ κ·Έ 값을 λ°”κΏ€ 수 μ—†μŠ΅λ‹ˆλ‹€. λ³€μˆ˜μ— μƒˆλ‘œμš΄ 값을 ν• λ‹Ήν•˜λ©΄ κΈ°μ‘΄ 값이 μˆ˜μ •λ˜λŠ” 것이 μ•„λ‹ˆλΌ μƒˆλ‘œμš΄ λ©”λͺ¨λ¦¬ 곡간에 값이 μƒμ„±λ˜κ³ , λ³€μˆ˜λŠ” 이λ₯Ό κ°€λ¦¬ν‚΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λΆˆλ³€μ„±μ€ λ°μ΄ν„°μ˜ 신뒰성을 보μž₯ν•©λ‹ˆλ‹€.var a = 10;var b = a;b = 20;console.log(a); // 10console.log(b); // 20λ¬Έμžμ—΄κ³Ό λΆˆλ³€μ„±λ¬Έμžμ—΄μ€ 각 λ¬Έμžλ§ˆλ‹€ 2λ°”μ΄νŠΈλ₯Ό μ‚¬μš©ν•˜λ©°, λ°°μ—΄μ²˜λŸΌ 인덱슀둜 μ ‘κ·Όν•  수 μžˆμ§€λ§Œ 변경은 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€.var str = "Hello";str[0] = "h";console.log(str); // "Hello" (λ³€κ²½λ˜μ§€ μ•ŠμŒ)값에 μ˜ν•œ μ „λ‹¬μ›μ‹œ 값은 값에 μ˜ν•œ μ „λ‹¬λ‘œ λ³΅μ‚¬λ©λ‹ˆλ‹€. λ³€μˆ˜ κ°„ 값이 λ³΅μ‚¬λ˜μ–΄ 독립적인 λ©”λͺ¨λ¦¬λ₯Ό κ°€..
πŸ”Ά κ°μ²΄λž€?κ°μ²΄λŠ” λ‹€μ–‘ν•œ κ°’(μ›μ‹œ κ°’ λ˜λŠ” λ‹€λ₯Έ 객체)을 ν•˜λ‚˜μ˜ λ‹¨μœ„λ‘œ κ΅¬μ„±ν•œ 볡합적인 μžλ£Œκ΅¬μ‘°μž…λ‹ˆλ‹€. μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œλŠ” 거의 λͺ¨λ“  것이 객체둜 이루어져 있으며, κ°μ²΄λŠ” 0개 μ΄μƒμ˜ ν”„λ‘œνΌν‹°λ‘œ κ΅¬μ„±λ©λ‹ˆλ‹€. 각 ν”„λ‘œνΌν‹°λŠ” 킀와 κ°’μœΌλ‘œ 이루어지며, κ°μ²΄λŠ” μƒνƒœ(ν”„λ‘œνΌν‹°)와 λ™μž‘(λ©”μ„œλ“œ)을 ν•¨κ»˜ 포함할 수 μžˆμŠ΅λ‹ˆλ‹€. πŸ”Ά 객체 λ¦¬ν„°λŸ΄μ„ μ‚¬μš©ν•œ 객체 μƒμ„±μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œλŠ” μ—¬λŸ¬ 가지 λ°©λ²•μœΌλ‘œ 객체λ₯Ό 생성할 수 μžˆμ§€λ§Œ, κ°€μž₯ κ°„λ‹¨ν•˜κ³  직관적인 방법은 객체 λ¦¬ν„°λŸ΄μ„ μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 객체 λ¦¬ν„°λŸ΄μ€ μ€‘κ΄„ν˜Έ ``{}`` μ•ˆμ— ν”„λ‘œνΌν‹°λ₯Ό μ •μ˜ν•˜μ—¬ 객체λ₯Ό μƒμ„±ν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€.const person = { name: "λ°•μ œλ‘œ", age: 24, greet: function() { console.log(`μ•ˆλ…•ν•˜μ„Έ..
πŸ”Ά νƒ€μž… λ³€ν™˜μ΄λž€?μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ λͺ¨λ“  값은 νŠΉμ • νƒ€μž…μ„ κ°€μ§‘λ‹ˆλ‹€. 이 νƒ€μž…μ„ λ³€ν™˜ν•˜λŠ” 과정을 νƒ€μž… λ³€ν™˜μ΄λΌ ν•©λ‹ˆλ‹€. κ°œλ°œμžκ°€ 직접 νƒ€μž…μ„ λ³€κ²½ν•˜λŠ” 경우λ₯Ό λͺ…μ‹œμ  νƒ€μž… λ³€ν™˜(νƒ€μž… μΊμŠ€νŒ…)이라 ν•˜λ©°, μžλ°”μŠ€ν¬λ¦½νŠΈ 엔진이 μ½”λ“œ μ‹€ν–‰ 쀑 μžλ™μœΌλ‘œ λ³€ν™˜ν•˜λŠ” 경우λ₯Ό 암묡적 νƒ€μž… λ³€ν™˜(νƒ€μž… κ°•μ œ λ³€ν™˜)이라 ν•©λ‹ˆλ‹€. μ€‘μš”ν•œ 점은 κΈ°μ‘΄ μ›μ‹œ κ°’μ˜ νƒ€μž…μ΄ 직접 λ³€κ²½λ˜λŠ” 것이 μ•„λ‹ˆλΌ, λ³€ν™˜λœ μƒˆλ‘œμš΄ μ›μ‹œ 값이 μƒμ„±λœλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. πŸ”Ά 암묡적 νƒ€μž… λ³€ν™˜μ••λ¬΅μ  νƒ€μž… λ³€ν™˜μ€ 개발자의 μ˜λ„μ™€ 상관없이 μ½”λ“œ λ¬Έλ§₯에 따라 μžλ°”μŠ€ν¬λ¦½νŠΈ 엔진이 μžλ™μœΌλ‘œ μˆ˜ν–‰ν•©λ‹ˆλ‹€.λ¬Έμžμ—΄ νƒ€μž…μœΌλ‘œ λ³€ν™˜``+`` μ—°μ‚°μžλŠ” ν”Όμ—°μ‚°μž 쀑 ν•˜λ‚˜λΌλ„ λ¬Έμžμ—΄μ΄λ©΄ λ¬Έμžμ—΄ μ—°κ²° μ—°μ‚°μžλ‘œ λ™μž‘ν•©λ‹ˆλ‹€. 이 κ³Όμ •μ—μ„œ λ¬Έμžμ—΄μ΄ μ•„λ‹Œ 값은 λ¬Έμžμ—΄λ‘œ λ³€ν™˜λ©λ‹ˆλ‹€.10 + '5'..
πŸ”Ά μ œμ–΄λ¬Έμ΄λž€?μ œμ–΄λ¬Έμ€ 쑰건에 따라 μ½”λ“œ 블둝을 μ‹€ν–‰ν•˜κ±°λ‚˜(쑰건문), νŠΉμ • μ½”λ“œλ₯Ό 반볡 μ‹€ν–‰ν•  λ•Œ(반볡문) μ‚¬μš©λ©λ‹ˆλ‹€. πŸ”Ά 블둝문블둝문은 ν•˜λ‚˜ μ΄μƒμ˜ 문을 μ€‘κ΄„ν˜Έ ``{}``둜 묢은 μ½”λ“œ 블둝을 μ˜λ―Έν•˜λ©°, 보톡 μ œμ–΄λ¬Έμ΄λ‚˜ ν•¨μˆ˜λ₯Ό μ •μ˜ν•  λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€. 블둝문은 자체적으둜 쒅결성을 κ°€μ§€λ―€λ‘œ μ„Έλ―Έμ½œλ‘ μ„ 뢙이지 μ•ŠμŠ΅λ‹ˆλ‹€. πŸ”Ά 쑰건문쑰건문은 주어진 쑰건식을 ν‰κ°€ν•œ ν›„, κ·Έ 결과에 따라 μ½”λ“œ λΈ”λ‘μ˜ μ‹€ν–‰ μ—¬λΆ€λ₯Ό κ²°μ •ν•©λ‹ˆλ‹€. 쑰건식은 μ°Έ(true)κ³Ό 거짓(false)으둜 ν‰κ°€λ©λ‹ˆλ‹€.if-else λ¬Έif (쑰건식1) { // 쑰건식1이 참이면 이 μ½”λ“œλΈ”λ‘μ΄ μ‹€ν–‰λœλ‹€.} else if (쑰건식2) { // 쑰건식2κ°€ 참이면 이 μ½”λ“œλΈ”λ‘μ΄ μ‹€ν–‰λœλ‹€.} else { // 쑰건식1κ³Ό 쑰건식2κ°€ λͺ¨λ‘ κ±°..
πŸ”Ά μ—°μ‚°μžλž€?μ—°μ‚°μžλŠ” ν•˜λ‚˜ μ΄μƒμ˜ 값에 λŒ€ν•΄ λ‹€μ–‘ν•œ 연산을 μˆ˜ν–‰ν•˜λŠ” κΈ°ν˜Έμž…λ‹ˆλ‹€. μ΄λ•Œ μ—°μ‚°μ˜ λŒ€μƒμ΄ λ˜λŠ” 값을 ν”Όμ—°μ‚°μžλΌκ³  ν•˜λ©°, 연산을 톡해 μƒˆλ‘œμš΄ 값을 μƒμ„±ν•©λ‹ˆλ‹€. πŸ”Ά μ‚°μˆ  μ—°μ‚°μžμ‚°μˆ  μ—°μ‚°μžλŠ” μˆ˜ν•™μ  연산을 μˆ˜ν–‰ν•˜μ—¬ μƒˆλ‘œμš΄ 숫자 값을 λ§Œλ“€μ–΄λ‚΄λŠ” μ—°μ‚°μžμž…λ‹ˆλ‹€. λ§Œμ•½ 연산이 λΆˆκ°€λŠ₯ν•œ 경우 ``NaN``(Not a Number)을 λ°˜ν™˜ν•©λ‹ˆλ‹€.μ‚°μˆ  μ—°μ‚°μžλŠ” ν”Όμ—°μ‚°μžμ˜ κ°œμˆ˜μ— 따라 μ΄ν•­ μ‚°μˆ  μ—°μ‚°μžμ™€ λ‹¨μΌ μ‚°μˆ  μ—°μ‚°μžλ‘œ κ΅¬λΆ„λ©λ‹ˆλ‹€.이항 μ‚°μˆ  μ—°μ‚°μž : 두 개의 ν”Όμ—°μ‚°μžλ₯Ό λŒ€μƒμœΌλ‘œ 연산을 μˆ˜ν–‰ν•©λ‹ˆλ‹€. λ§μ…ˆ(``+``), λΊ„μ…ˆ(``-``), κ³±μ…‰(``*``), λ‚˜λˆ—μ…ˆ(``/``), λ‚˜λ¨Έμ§€(``%``)κ°€ 이에 ν•΄λ‹Ήν•©λ‹ˆλ‹€. 이듀은 ν”Όμ—°μ‚°μžλ₯Ό λ³€κ²½ν•˜μ§€ μ•Šκ³  μƒˆλ‘œμš΄ 값을 λ°˜ν™˜ν•˜λ―€λ‘œ λΆ€μˆ˜ νš¨κ³Όκ°€ μ—†μŠ΅λ‹ˆλ‹€.단항 μ‚°μˆ  μ—°..
πŸ”Ά 숫자 νƒ€μž…μžλ°”μŠ€ν¬λ¦½νŠΈλŠ” ν•˜λ‚˜μ˜ 숫자 νƒ€μž…λ§Œμ„ κ°€μ§‘λ‹ˆλ‹€. λͺ¨λ“  수λ₯Ό 배정밀도 64λΉ„νŠΈ λΆ€λ™μ†Œμˆ˜μ  ν˜•μ‹, 즉 μ‹€μˆ˜λ‘œ ν‘œν˜„ν•©λ‹ˆλ‹€. λ”°λΌμ„œ 1κ³Ό 1.0은 같은 데이터가 λ˜λŠ”κ²λ‹ˆλ‹€. λ˜ν•œ 2μ§„μˆ˜, 8μ§„μˆ˜, 16μ§„μˆ˜λ‘œ 값을 할당해도 λ³€μˆ˜ μ°Έμ‘° μ‹œ λͺ¨λ‘ 10μ§„μˆ˜λ‘œ ν•΄μ„λ©λ‹ˆλ‹€. νŠΉλ³„ν•œ 숫자 νƒ€μž…μœΌλ‘  ``Infinity``(μ–‘μ˜ λ¬΄ν•œλŒ€), ``-Infinity``(음의 λ¬΄ν•œλŒ€), ``NaN``(μ‚°μˆ μ—°μ‚°λΆˆκ°€)κ°€ μžˆμŠ΅λ‹ˆλ‹€. πŸ”Ά λ¬Έμžμ—΄ νƒ€μž…λ¬Έμžμ—΄μ€ ν…μŠ€νŠΈ 데이터λ₯Ό λ‚˜νƒ€λ‚΄κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€. μž‘μ€ λ”°μ˜΄ν‘œ(''), 큰 λ”°μ˜΄ν‘œ(""), λ°±ν‹±(``)으둜 ν…μŠ€νŠΈλ₯Ό 감싸 ν‘œν˜„ν•©λ‹ˆλ‹€. 이 기호 없이 μž‘μ„±λœ ν…μŠ€νŠΈλŠ” μ‹λ³„μžλ‚˜ λ¦¬ν„°λŸ΄λ‘œ μΈμ‹λ˜κΈ° λ•Œλ¬Έμ— λ°˜λ“œμ‹œ μ΄λŸ¬ν•œ 기호둜 감싸야 ν•©λ‹ˆλ‹€. πŸ”Ά ν…œν”Œλ¦Ώ λ¦¬ν„°λŸ΄μžλ°”μŠ€ν¬λ¦½νŠΈ λ¬Έμžμ—΄μ—” ν…œν”Œλ¦Ώ..
πŸ”Ά 값값은 ν‘œν˜„μ‹μ΄ ν‰κ°€λ˜μ–΄ μƒμ„±λœ κ²°κ³Όλ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. λ³€μˆ˜μ— ν• λ‹Ήλ˜λŠ” 것이 λ°”λ‘œ κ°’μž…λ‹ˆλ‹€. 값은 λ‹€μ–‘ν•œ λ°©μ‹μœΌλ‘œ 생성될 수 있으며, κ°€μž₯ κ°„λ‹¨ν•œ 방법은 λ¦¬ν„°λŸ΄μ„ μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. πŸ”Ά λ¦¬ν„°λŸ΄λ¦¬ν„°λŸ΄μ€ μ‚¬λžŒμ΄ μ•Œμ•„λ³Ό 수 μžˆλŠ” λ¬Έμžλ‚˜ 기호 등을 μ‚¬μš©ν•΄ 값을 ν‘œκΈ°ν•˜λŠ” λ°©λ²•μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μˆ«μžλŠ” 아라비아 숫자λ₯Ό μ‚¬μš©ν•˜κ³  λ¬Έμžμ—΄μ€ ``""`` 기호 사이에 μž‘μ„±ν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€.μ»΄ν“¨ν„°λŠ” μ΄μ§„μˆ˜λ‘œ 데이터λ₯Ό μ²˜λ¦¬ν•˜μ§€λ§Œ λ¦¬ν„°λŸ΄μ„ 톡해 μ‚¬λžŒμ΄ μ‰½κ²Œ 데이터λ₯Ό μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ¦¬ν„°λŸ΄μ€ λŸ°νƒ€μž„ μ‹œ ν‰κ°€λ˜μ–΄ 값을 μƒμ„±ν•˜κ²Œ λ©λ‹ˆλ‹€. πŸ”Ά ν‘œν˜„μ‹ν‘œν˜„μ‹μ€ κ°’μœΌλ‘œ 평가될 수 μžˆλŠ” λ¬Έμž…λ‹ˆλ‹€. ν‘œν˜„μ‹μ„ ν•΄μ„ν•˜λ©΄ μƒˆλ‘œμš΄ 값이 μƒμ„±λ˜κ±°λ‚˜ κΈ°μ‘΄ 값을 μ°Έμ‘°ν•˜κ²Œ λ©λ‹ˆλ‹€.λ¦¬ν„°λŸ΄ μžμ²΄κ°€ ν‘œν˜„μ‹μ΄ 될 수 μžˆμŠ΅λ‹ˆλ‹€.``50 + 50``..
#JERO
'πŸ“’ Jero's Review' μΉ΄ν…Œκ³ λ¦¬μ˜ κΈ€ λͺ©λ‘