일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- JavaScript
- mapreduce
- SPC
- table
- xPlatform
- vaadin
- Kotlin
- R
- Sqoop
- hadoop
- tomcat
- Eclipse
- react
- Android
- Spring
- Express
- 공정능력
- Python
- SQL
- GIT
- plugin
- MSSQL
- Java
- NPM
- window
- IntelliJ
- mybatis
- es6
- SSL
- 보조정렬
- Today
- Total
목록front-end & ui/javascript (25)
DBILITY
ES5에서는 Object.create()를 통해 가능하다고 한다. function log(...args) { args.forEach(function (v, i) { console.log(v); }) } var parent = { name: '부모', age: 5000 }; var child = Object.create(parent); var grandChild = Object.create(child); log(child); child.name = '자식'; child.age = 10; log(child); grandChild.name = '손자'; grandChild.age = 2; log(grandChild, grandChild.name); log(grandChild.__proto__);
이거 보고 광고 한번 안 누른 이는 삼대가 재수가 없을지어다!ㅋㅋ naming convention이 첫 글자는 대문자여야 한다. 그러라고 한다. 생성할 때 new를 사용. object내에 method를 정의하면 생성될 때마다 각각 call stack, heap을 할당한다. prototype에 property또는 method를 추가하면 같은 주소를 공유하므로, 불필요한 메모리 낭비도 줄일 수 있다? 결국 함수의 원형을 조작하는게 되어 상속개념과 같게 되는 것인가? 작성해 보니 객체 생성 후에 추가해도 추가가 되는 것인지, 이것도 hoisting이 되는 것인지 실행에 문제가 없다. ※ m1.sayGoodBye(); 부분을 prototype추가 전으로 올려보니 오류가 난다. hoisting이 안되나 보다. _..
이전엔 대충 function으로 했다고 한다.비슷한가? prototype이란 용어만 익숙하면 될 것 같다. 여기서 Person의 prototype, 말하자면 원형보단 조상(?)이 Object다. function Person(name) { this.name = name; this.age = '김수한무 거북이와 두루비 삼천갑자 동박삭 치치카포 사리사리센타 워리워리 세브리깡 무두셀라 구름이 허리케인에 담벼락 담벼락에 서생원 서생원에 고양이 고양이엔 바둑이 바둑이는 돌돌이'; this.sayWelcome = function () { console.log(`어서와~ ${this.name}님`); } } Person.prototype.sayGoodbye = function () { console.log(`잘가유~ ..
독거 가능성 100% 노후에 라면값이라도 하게 광고 한번씩 클릭하시오! 싫어? 꺼져~! Please click on the ad so that I can pay for ramen in my old age! 老後にラーメン代だけでもするように広告を一回クリックしてください。 点击一下广告,让老后吃个泡面钱吧! function multiply(a, b = 1 * a) { return a * b } function sum(a, b = multiply(a)) { console.log(arguments); let s = 0; for (let key in arguments) { s+=arguments[key]; } console.log(s); } sum(1); sum(1, 2); sum(...[1, 2]); 함수의 param..
이거 보고 광고 한번 안 누른 이는 삼대가 재수가 없을지어다!ㅋㅋ ... spread operator는 말 그대로 spread, 전개, 넓~게 펼친다. 다음은 array, string, object에 적용하고, 그림 1은 전개한 결과다. 변수 c는 array를 병합, obj2는 object를 병합하는데, object의 경우(es9=es2018) 동일한 속성이 있을 경우 후위에 합쳐진 속성이 적용된다. var arr = ['안녕하세요', '반가워요']; var str = '내일 또 만나요'; console.log(...arr); console.log(...str); var a = [1, 2, 3]; var b = [4, 5, 6]; var c = [...a, ...b]; console.log(c); var..