생활코딩객체지향

· Javascript
bind() bind()는 this 값을 고정시키는 명령! bind() 안의 첫번째 인자는 this 를 고정시키고, 두번째 인자부터는 함수가 호출될때마다 사용된다. sum이라는 함수에 this를 kim 으로 고정하는 새로운 함수(KimSum)가 만들어짐 // object 와 function 사이의 관계를 규명해보기 2 let kim = {name:'kim', first:10, second:20} let lee = {name:'lee', first:10, second:10} function sum(prefix){ return prefix +(this.first + this.second); } console.log('sum.call(kim)', sum.call(kim, '=>')); console.log('..
· Javascript
call()은 실행할때마다 어떤 객체의 this 값을 바꾸는 명령! call()은 첫번째 인자로는 그 함수에 내부적으로 this를 뭘로 할지 오고, 두번째 인자부터는 호출하려는 함수에 인자값(parameter)이 들어오게 된다 // object 와 function 사이의 관계를 규명해보기 1 //서로 아무런 관련이 없는 두 객체를 만들었어요. let kim = {name:'kim', first:10, second:20} let lee = {name:'lee', first:10, second:10} function sum(prefix){ return prefix +(this.first + this.second); // 어떤 객체에도 속해있지 않은 함수 } //sum 이라는 객체를 실행시키겠다! consol..
· Javascript
자바스크립트의 굉장히 유연한 특징! 마음대로 누군가의 자식이 될 수 있다~~ 단, 자식은 부모를 못바꾼다 let superObj = {superVal:'super'} let subObj = {subVal:'sub'} // 자바스크립트의 굉장히 유연한 특징! // 마음대로 누군가의 자식이 될 수 있다 subObj.__proto__ = superObj; // '__proto__'라는 링크를 걸어줌: subObj는 선조는 superObj이다 console.log('subObj.subVal =>',subObj.subVal); console.log('subObj.superVal =>',subObj.superVal);// 객체 subObj가 superVal이라는 속성을 가지는 지 찾아봄. 없다, 그러면 '__pro..
· Javascript
Object.create() __proto__ 대신에 'Object.create()' 를 사용해서 prototype link(명확한 상속관계)를 지정해줄 수 있다. let lee = Object.create(kim); kim을 부모로 하는 자식객체 lee를 만들어줘 let superObj = {superVal:'super'} //let subObj = {subVal:'sub'} //subObj.__proto__ = superObj; let subObj = Object.create(superObj);// superObj를 부모로 하는 새로운 객체,보다 prototype link(명확한 상속관계)를 확립! subObj.subVal = 'sub'; //주석처리를 한 위의 코드와 똑같이 동작 console.lo..
· Javascript
'__proto__' lee.__proto__ = kim; lee는 kim의 자식이다 // class 문법이 아니라 아주 관습적(prototype)으로 상속하는 방법 let superObj = {superVal:'super'} let subObj = {subVal:'sub'} // 자바스크립트의 굉장히 유연한 특징! // 마음대로 누군가의 자식이 될 수 있다 subObj.__proto__ = superObj; // '__proto__'라는 링크를 걸어줌: subObj는 선조는 superObj이다 console.log('subObj.subVal =>',subObj.subVal); console.log('subObj.superVal =>',subObj.superVal);// 객체 subObj가 superVa..
· Javascript
super 키워드 super() 키워드는 상위(부모)객체의 함수를 호출할 때 사용됩니다 단, constructor(생성자) 안에서는 super 키워드 하나만 사용되거나 this 키워드 전에 먼저 호출되어야 합니다 부모 클래스의 영역을, 자식클래스(나)도 포함하고 있는 경우! 중복을 줄이려고 그때, 사용하는 키워드 'super' super 형태 2가지 1.super() = 부모 클래스의 생성자(constructor) 2.super. = 부모클래스의 class Person { constructor(name, first, second){ this.name =name; this.first=first; this.second=second; } sum(){ return this.first+this.second; } ..
· Javascript
Class inheritance 상속을 쓰는 이유: 중복코드를 제거하기 위함. 즉, 부모클래스를 일일이 쓰지않고, 데려와 새로운 기능을 자식 class에 추가해 주고 싶을때 형태 : 자식클래스인 PersonPlus 는 부모클래스인 Person의 속성을 가지고 와서 공유한다 따라서, 부모클래스 Person의 속성을 수정한다면, 자식클래스 PersonPlus 속성도 수정됨 //부모클래스 class Person { constructor(name, first, second){ this.name =name; this.first=first; this.second=second; } sum=()=>{ return (this.first+this.second); } } //자식클래스 class PersonPlus exte..
becky(지은)
'생활코딩객체지향' 태그의 글 목록