JavaScript
-
[Javascript]Symbolμ¬λΆμμ¬λΆμ/Javascript 2022. 4. 25. 00:01
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. μ¬λ²μ΄λ? μ¬λ²μ ES6μμ λμ λ 7λ²μ§Έ λ°μ΄ν° νμ μΌλ‘ λ³κ²½ λΆκ°λ₯ν μμ νμ μ κ°μ΄λ€. μ¬λ² κ°μ λ€λ₯Έ κ°κ³Ό μ€λ³΅λμ§ μλ μ μΌλ¬΄μ΄ν κ°μ΄λ€. λ°λΌμ μ£Όλ‘ μ΄λ¦μ μΆ©λ μνμ΄ μλ μ μΌν νλ‘νΌν° ν€λ₯Ό λ§λ€κΈ° μν΄ μ¬μ©νλ€. μ¬λ² κ°μ μμ± 1. Symbol ν¨μ μ¬λ² κ°μ Symbol ν¨μλ₯Ό νΈμΆνμ¬ μμ±νλ€. μ΄λ μμ±λ μ¬λ² κ°μ μΈλΆλ‘ λ ΈμΆλμ§ μμ νμΈν μ μμΌλ©°, λ€λ₯Έ κ°κ³Ό μ λ μ€λ³΅λμ§ μλ μ μΌλ¬΄μ΄ν κ°μ΄λ€. // Symbol ν¨μλ₯Ό νΈμΆνμ¬ μ μΌλ¬΄μ΄ν μ¬λ² κ°μ μμ±νλ€. const mySymbol = Symbol(); console.log(typeof mySymbol); // symbol // μ¬λ² κ°μ μΈλΆλ‘ ..
-
[Javascript]λ°°μ΄(3) κ³ μ°¨ν¨μμ¬λΆμμ¬λΆμ/Javascript 2022. 4. 19. 21:45
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. κ³ μ°¨ν¨μ κ³ μ°¨ν¨μλ ν¨μλ₯Ό μΈμλ‘ μ λ¬λ°κ±°λ ν¨μλ₯Ό λ°ννλ ν¨μλ₯Ό λ§νλ€. κ³ μ°¨ ν¨μλ μΈλΆ μνμ λ³κ²½μ΄λ κ°λ³ λ°μ΄ν°λ₯Ό νΌνκ³ λΆλ³μ±μ μ§ν₯νλ ν¨μν νλ‘κ·Έλλ°μ κΈ°λ°μ λκ³ μλ€. ν¨μν νλ‘κ·Έλλ°μ μμν¨μμ 보쑰 ν¨μμ μ‘°ν©μ ν΅ν΄ λ‘μ§ λ΄μ μ‘΄μ¬νλ 쑰건문과 λ°λ³΅λ¬Έμ μ κ±°νμ¬ λ³΅μ‘μ±μ ν΄κ²°νκ³ λ³μμ μ¬μ©μ μ΅μ νμ¬ μν λ³κ²½μ νΌνλ €λ νλ‘κ·Έλλ° ν¨λ¬λ€μμ΄λ€. μ¦, μμ ν¨μλ₯Ό ν΅ν΄ λΆμ ν¨κ³Όλ₯Ό μ΅λν μ΅μ νμ¬ μ€λ₯λ₯Ό νΌνκ³ νλ‘κ·Έλ¨μ μμ μ±μ λμ΄λ €λ κ²μ΄λ€. 1. sort sort λ©μλλ λ°°μ΄μ μμλ₯Ό μ λ ¬νλ€. μλ³Έ λ°°μ΄μ μ§μ λ³κ²½νμ¬ μ λ ¬λ λ°°μ΄μ λ°ννλ€. sort λ©μλλ μλ³Έμ μΌλ‘ μ€λ¦μ°¨μμΌλ‘ μ λ ¬ννλ€. ..
-
[Javascript]λ°°μ΄(2) λ©μλμ¬λΆμμ¬λΆμ/Javascript 2022. 4. 13. 09:52
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. λ°°μ΄ λ©μλ μλ°μ€ν¬λ¦½νΈλ λ°°μ΄μ λ€λ£° λ μ μ©ν λ€μν λΉνΈμΈ λ©μλλ₯Ό μ 곡νλ€. λ°°μ΄ λ©μλλ κ²°κ³Όλ¬Όμ λ°ννλ ν¨ν΄μ΄ λ κ°μ§μ΄λ―λ‘ μ£Όμκ° νμνλ€. λ°°μ΄μλ μλ³Έ λ°°μ΄μ μ§μ λ³κ²½νλ λ©μλ(metator method)μ μλ³Έ λ°°μ΄μ μ§μ λ³κ²½νμ§ μκ³ μλ‘μ΄ λ°°μ΄μ μμ±νμ¬ λ°ννλ λ©μλ(accessor method)κ° μλ€. const arr = [1]; // push λ©μλλ μλ³Έ λ°°μ΄(arr)μ μ§μ λ³κ²½νλ€. arr.push(2); console.log(arr); // [1, 2] // concat λ©μλλ μλ³Έ λ°°μ΄(arr)μ μ§μ λ³κ²½νμ§ μκ³ μλ‘μ΄ λ°°μ΄μ μμ±νμ¬ λ°ννλ€. const result = arr.con..
-
[Javascript]λ°°μ΄(1)μ μ, νΉμ§, μμ± λ°©λ²μ¬λΆμμ¬λΆμ/Javascript 2022. 4. 12. 00:09
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. λ°°μ΄μ΄λ? λ°°μ΄μ μ¬λ¬ κ°μ κ°μ μμ°¨μ μΌλ‘ λμ΄ν μλ£κ΅¬μ‘°λ€. μλ°μ€ν¬λ¦½νΈλ λ°°μ΄μ λ€λ£¨κΈ° μν μ μ©ν λ©μλλ₯Ό λ€μ μ 곡νλ€. λ€μμ λ°°μ΄ λ¦¬ν°λ΄μ ν΅ν΄ λ°°μ΄μ μμ±ν μμ΄λ€. const arr = ['apple', 'banana', 'orange']; 1. μμ(element) λ°°μ΄μ΄ κ°μ§κ³ μλ κ°μ μμλΌκ³ νκ³ , μλ°μ€ν¬λ¦½νΈμ λͺ¨λ κ°μ λ°°μ΄μ μμκ° λ μ μλ€. λ°°μ΄μ μμλ λ°°μ΄μμ μμ μ μμΉλ₯Ό λνλ΄λ 0 μ΄μμ μ μμΈ μΈλ±μ€λ₯Ό κ°λλ€. μ΄ μΈλ±μ€λ‘ λ°°μ΄μ νΉμ μμμ μ κ·Όν μ μλ€. λ°°μ΄μ 맨 μ μμκ° 0μ΄λ©°, λ€λ‘ κ°μλ‘ νλμ© κ°μ΄ μ€λ₯Έλ€. μΈλ±μ€κ° 1μ΄ μλ 0λΆν° μμνλ κ²μ μ£Όμνμ. λν μΈλ±μ€λ₯Ό μ¬μ©..
-
[Javascript] Class (2) μΈμ€ν΄μ€, μΆκ° κΈ°λ₯, μμμ¬λΆμμ¬λΆμ/Javascript 2022. 4. 4. 23:59
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. ν΄λμ€μ μΈμ€ν΄μ€ μμ± κ³Όμ class Person { // μμ±μ constructor(name) { // 1. μ묡μ μΌλ‘ μΈμ€ν΄μ€κ° μμ±λκ³ thisμ λ°μΈλ©λλ€. console.log(this); // Person {} console.log(Object.getPrototypeOf(this) === Person.prototype); // true // 2. thisμ λ°μΈλ©λμ΄ μλ μΈμ€ν΄μ€λ₯Ό μ΄κΈ°ννλ€. this.name = name; // 3. μμ±λ μΈμ€ν΄μ€κ° λ°μΈλ©λ thisκ° μ묡μ μΌλ‘ λ°νλλ€. } } 1. μΈμ€ν΄μ€ μμ±κ³Ό this λ°μΈλ© 1) new μ°μ°μμ ν¨κ» ν΄λμ€λ₯Ό νΈμΆνλ©΄ ν΄λμ€ μμ constructorμ μ½λκ°..
-
[Javascript]Class (1)μ μμ λ©μλμ¬λΆμμ¬λΆμ/Javascript 2022. 3. 29. 21:52
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. ν΄λμ€λ νλ‘ν νμ μ λ¬Έλ²μ μ€νμΈκ°? μλ°μ€ν¬λ¦½νΈμ κ°μ νλ‘ν νμ κΈ°λ° κ°μ²΄μ§ν₯ μΈμ΄λ ν΄λμ€κ° νμ μλ κ°μ²΄μ§ν₯ νλ‘κ·Έλλ° μΈμ΄λ€. ES5μμλ ν΄λμ€ μμ΄λ λ€μκ³Ό κ°μ΄ μμ±μ ν¨μμ νλ‘ν νμ μ ν΅ν΄ κ°μ²΄μ§ν₯ μΈμ΄μ μμμ ꡬνν μ μλ€. // ES5 μμ±μ ν¨μ var Person = (function () { // μμ±μ ν¨μ function Person(name) { this.name = name; } // νλ‘ν νμ λ©μλ Person.prototype.sayHi = function () { console.log('Hi! My name is ' + this.name); }; // μμ±μ ν¨μ λ°ν return Perso..
-
[Javascript] ν΄λ‘μ Έμ¬λΆμμ¬λΆμ/Javascript 2022. 3. 29. 14:44
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. λ μ컬 μ€μ½ν μλ°μ€ν¬λ¦½νΈ μμ§μ ν¨μλ₯Ό μ΄λμ νΈμΆνλμ§κ° μλλΌ ν¨μλ₯Ό μ΄λμμ μ μνλμ§μ λ°λΌ μμ μ€μ½νλ₯Ό κ²°μ νλ€. μ΄λ₯Ό λ μ컬 μ€μ½ν(μ μ μ€μ½ν)λΌκ³ νλ€. const x = 1; function foo() { const x = 10; bar(); } function bar() { console.log(x); } foo(); // ? bar(); // ? μ μμ μμ bar ν¨μμ κ²°κ³Ό κ°μ 10μ΄ μλλΌ 1μ΄λ€. μ΄κ²μ μλ°μ€ν¬λ¦½νΈ μμ§μ΄ λ μ컬 μ€μ½νλ₯Ό λ°λ₯΄κΈ° λλ¬Έμ΄λ€. λ μ컬 νκ²½μ μΈλΆ λ μμ½ νκ²½μ λν μ°Έμ‘°μ μ μ₯ν κ°, μ¦ μμ μ€μ½νμ λν μ°Έμ‘°λ ν¨μ μ μκ° νκ°λλ μμ μ ν¨μκ° μ μλ νκ²½(μμΉ)μ μν΄ ..
-
[Javascript]thisμ¬λΆμμ¬λΆμ/Javascript 2022. 3. 26. 18:52
#λͺ¨λμλ°μ€ν¬λ¦½νΈ_λ₯λ€μ΄λΈ μ€ν°λλ₯Ό μ§ννλ©΄μ μ 리ν λ΄μ©μ λλ€. this ν€μλ κ°μ²΄λ μνλ₯Ό λνλ΄λ νλ‘νΌν°μ λμμ λνλ΄λ λ©μλλ₯Ό νλμ λ Όλ¦¬μ μΈ λ¨μλ‘ λ¬Άμ 볡ν©μ μΈ μλ£κ΅¬μ‘°λ€. λ°λΌμ λμμ λνλ΄λ λ©μλλ μμ μ΄ μν κ°μ²΄μ μνλ₯Ό μ°Έμ‘°νκ³ λ³κ²½ν μ μκΈ°λλ¬Έμ μμ μ΄ μν κ°μ²΄λ₯Ό κ°λ¦¬ν€λ μλ³μλ₯Ό μ°Έμ‘°ν μ μμ΄μΌ νλ€. κ°μ²΄ 리ν°λ΄ λ°©μμΌλ‘ μμ±ν κ°μ²΄λ λ©μλ λ΄λΆμμ μμ μ΄ μν κ°μ²΄λ₯Ό κ°λ¦¬ν€λ μλ³μλ₯Ό μ¬κ·μ μΌλ‘ μ°Έμ‘°ν μ μλ€. const circle = { radius: 5, getDiameter() { // μ΄ λ©μλκ° μμ μ΄ μν κ°μ²΄μ νλ‘νΌν°λ λ€λ₯Έ λ©μλλ₯Ό μ°Έμ‘°νλ €λ©΄ // μμ μ΄ μν κ°μ²΄μΈ circleμ μ°Έμ‘°ν μ μμ΄μΌ νλ€. return 2 * circle.r..