분류 전체보기79 this, 콜백 ::: 코어 자바 스크립트 1 2 3 코어 p.73 this var obj1 = { // 1) 객체 생성: obj1 안에 outer 익명 함수 프로퍼티 outer: function() { // 3) obj1.outer() 함수의 실행 컨텍스트 생성->호이스팅. obj1로 this 바인딩 console.log(this); // 4) this 는 obj1 var innerFunc = function() { // 5) innerFunc 는 지역변수.outer스코프에서만 접근 console.log(this); // 전역 or obj2 } innerFunc(); // 6) 일반함수로 직접 호출("." 이 없다.) this 는 전역 var obj2 = { innerMethod: innerFunc }; obj2.innerMethod(); //.. 자바스크립트 문법/중고급(비동기_프라미스_this) 2022. 10. 20. javascript 학습 중 (책과 강의 등) 웹은 나랑 정말 적성에 안맞는 것 같다. html, css 는 특히, 디자인이라는 인식이 커서 특히 관심이 없는 것 같다. 디자인은 컨텐츠에 집중할 수 있도록, 미니멀리즘, 심플이 좋아서, 더더욱 자바스크립트, css 에 관심이 안가는걸 어떡하니.... 파이썬 자동화라든가, ERP 같은 프로그램 만드는 것엔 집중이 매우 잘 되는데... 이건 정말 적성 문제인것 같다. 고민 최대한 빨리 끝내려고 하지만, 이건 뭐... 손에 잘 안잡혀서 ㅠㅠ 동기부여가 더 이상 안돼서 이 속도로 익히게 된다면, ERP 언어로 바꿔야할 것 같다. C# 이나 자바로 갈아타야하지 않을까... 동기 부여. 목표 구글 스프레드시트 연계 (코로나 보드) 눈이 반짝 뜨였던 부분이 또 블로그 글에서 제목, 소제목으로 자동 목차(TOC) .. 자바스크립트 문법 2022. 10. 13. 25장 클래스 (10/7) Deep Dive 책은 19장 프로토타입이 하이라이트였어... 서브 클래스의 super 호출 (슈퍼클래스 호출)이 중요한 이유 new 서브클래스() 호출 서브 클래스 constructor 에서 super() 슈퍼 클래스 constructor 에서 인스턴스 생성 후, 서브에 반환 : 수퍼클래스가 인스턴스를 생성했으나, "new와 함께 서브클래스가 호출"했으므로, new. target은 서브클래스. 즉, 수퍼클래스가 생성한(생성해서 반환한) 인스턴스는 서브클래스가 생성한 것으로 처리된다. 결과적으로 인스턴스의 프로토타입은 슈퍼클? 서브클? --> 서브클래스.prototype 서브클래스에서 인스턴스를 this 바인딩하여 그대로 사용. 25.8.3 동적 상속 (클래스 상속 or 생성자 함수 상속) 동적 상속 코.. 자바스크립트 문법 2022. 9. 30. 24장 클로저 준비 운동 js 엔진은 함수가 호출될 때, 1) 함수를 호출한 위치가 아니라 정의한 위치(렉시컬 스코프) 에 따라 상위 스코프를 결정하고, 2) 상위 스코프를 내부슬롯에 저장. 클로저? 어디에 써? 변수 직접 접근변경을 막는 것과 같이 상태를 은닉해서, 특정 함수에게만 상태 변경을 허용하기 위해 사용. 클로저(Closure)란? 중첩 함수에서 함수가 종료된 이후에도, 내부 함수가 외부 함수의 변수를 참조하게 만든다는 거. 몬소리야? 외부 함수가 실행 종료된 이후, 외부 함수의 변수에 어떻게 접근 가능한가? 몬소리야. 어떻게? 1) 실행 컨텍스트 2) 렉시컬 스코프 생성/기억 상위 스코프(외부 함수)의 변수를 참조하던 내부 함수를 return 외부 함수는 .... 죽어도, 유산은 남아있는 거. 어디에? 내.. 자바스크립트 문법/중고급(비동기_프라미스_this) 2022. 9. 30. 22장 this 1. this : 메서드에서는 호출한 객체를 가리킴 this 는 객체의 프로퍼티나 메서드를 참조하기 위한 자기 참조 변수 클래스 기반 언어 this 자바스크립트 this 인스턴스 함수가 호출되는 방식에 따라 동적 결정 전역에서, 일반 함수내에서 : window 전역 객체 ---> this 를 일치시킬 방법은? 생성자 함수 내부: 인스턴스 메서드(객체의 프로퍼티가 함수)에서는 호출한 객체 Function.prototype.apply/call/bind 메서드에 의한 간접 호출 //1. 전역 window console.log(this); // window //2. 생성자 함수 내부: 인스턴스 function Person(name) { this.name = name; console.log(this); } con.. 자바스크립트 문법/중고급(비동기_프라미스_this) 2022. 9. 30. 19 프로토타입 1) __proto__ (Object.prototype의 접근자 프로퍼티) 객체가 직접 소유한 것이 아니라, Object.prototype 의 접근자 프로퍼티. 체크 없이 프로토타입 교체로 인한 상호참조/무한루프 발생을 막음. 모든 객체는 __proto__를 상속받아 사용할 수 있다. __proto__ 로 자신의 프로토타입[[Prototype]] 내부 슬롯(Object.prototype)에 접근할 수 있다. 2) 함수 객체의 prototype 프로퍼티 : 생성자 함수 constructor 가 생성할 인스턴스의 프로토타입 (생성할 인스턴스가 아니라, 인스턴스의 prototype) 프로토타입을 참조하는 프로퍼티 : 와 __proto__ 접근자 프로퍼티 prototype 프로퍼티 소유, 사용 주체 모든 객체 .. 자바스크립트 문법 2022. 9. 26. 17 생성자 함수에 의한 객체 생성 Object 생성자 함수 생성자 함수 객체 리터럴 생성 방식 문제점 생성자 함수 생성 방식 장점 생성자 함수의 인스턴스 생성 과정 내부 메서드 [[Call]]과 [[Construct]] constructor 와 non-constructor 의 구분 new 연산자 new.target 전체 소스 // 줄 바꿈\n 제거 : ^$\n // 주석// 제거 : //.* // # 위로 줄\n 삽입 ^#.[0-9]* 바꾸기: \n$0 # 17-01 // 빈 객체의 생성 const person = new Object(); // 프로퍼티 추가 person.name = 'Lee'; person.sayHello = function () { console.log('Hi! My name is ' + this.name); }; c.. 자바스크립트 문법 2022. 9. 26. 16 프로퍼티 어트리뷰트 (조내 복잡타 ㅠ) 프로퍼티 어트리뷰트 : 자바스크립트 중급에서 가장 난이도가 높은 곳이였음 이해하기 어려운건 아니고, 체계를 잡기 위해 트리 모양 연습 필요! 프로퍼티의 [[Prototype]] . ㅠ 16.1 내부 슬롯과 내부 메서드 모든 객체는 내부 슬롯으로 [[Prototype]] 이 있다. 프로퍼티를 만들면, 자동으로 프로퍼티 속성도 정의 된다. 16.2 프로퍼티 속성/어트리뷰트( getOwnPropertyDescriptor 일반 객체의 __proto__ 는 접근자 프로퍼티다( get, set ) 함수 객체의 prototype 은 데이터 프로퍼티다. 일반 객체 함수 객체 '__proto__' 접근자 프로퍼티 get, set, .... undefined 'prototype' undefined 데이터 프로퍼티 valu.. 자바스크립트 문법 2022. 9. 18. 13. 스코프 // 14. 전역 변수의 문제점 // 15. let, const와 블록 레벨 스코프 13장: 스코프 1. 스코프란 2. 스코프의 종류 : 전역 스코프와 지역 스코프 3. 스코프 체인 : 체인에 의한 변수 / 함수 검색 4. 함수 레벨 스코프 5. 렉시컬 스코프(=정적/static 스코프) : 어디서 정의했는지에 따라 상위 스코프 결정 함수를 어디에 호출했는지는 상관없다. 함수가 정의(생성)되면서, 상위 스코프를 기억한다.(( 함수의 위치)) var x = 1; function foo() { var x = 10; bar(); // bar()는 전역인 1 일까, 지역인 10일까. //bar가 정의된 자리의 범위(스코프)를 기억중. --> 그래서, x 는 1 console.log(x); } function bar(){ console.log(x); // 전역인 1 } foo(); bar(); .. 자바스크립트 문법 2022. 9. 12. 10-11장 객체(프로퍼티, 메서드) ***기초 중요*** var obj = { x, y }; // 변수 이름과 프로퍼티 키의 이름이 같으면, 프로퍼티 키를 생략할 수 있다. 메서드 정의시, sayHi() : function() {.....} ----> sayHi(){.........} // 프로퍼티 키 생략 var x = 1, y = 2; var obj = {x, y}; // x: x, y: y console.log(obj); // { x: 1, y: 2 } // 메서드 정의 시, function 생략 const obj = { name: 'Lee', sayHi() { // ES5: sayHi: function() { ....... console.log('Hi!' + this.name); } }; obj.sayHi(); https://poiemaweb.com/e.. 자바스크립트 문법 2022. 9. 10. centos7 MySQL8 설치+DB생성+유저권한 이런 크고 중요한 프로그램은 충돌도 많기 때문에, 항상 기존 관련 설치 확인 후 깨끗이 정리한 후 시작. https://zero-gravity.tistory.com/338 어마어마하게 정리를 잘하는 분이다. 존경하는 마음을 담아...메모...로 1. Delete old version 1-1. mysql 버전 확인 yum list installed | grep mysql yum remove -y mysql-community-* 1-3. mysql 폴더 삭제 rm -rf /var/lib/mysql 2. Install new version 2-1. yum repository 등록 yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-5... 자바스크립트 문법 2022. 8. 23. 큐냅: 도커 리눅스 : systemctl 명령어가 안먹힘 -> LXD 1. 큐냅 Docker 에서 centos 7 설치 후, sytemctl 명령어가 안먹었다. systemctl 명령 사용시, Failed to get D-Bus connection: Operation not permitted 포기하려다가 혹시나해서, LXD 에서 설치 --> 성공 2. LXD 에서 centos 설치 --> systemctl 명령어 ok! Docker 자체 학습목적이 아니니까, 전혀 개의치 않음. LXD 로 설치 한 후, 최초 접속시 이렇게 passwd 설정부텀! 터미널 아이콘 3. ip 확인 후, openssh-server 만 설치 후, 빨리 이쁜 터미널로 도망가자. yum install openssh-server -y systemctl start sshd ( 실제 실행할 때는 openss.. 자바스크립트 문법 2022. 8. 22. 이전 1 ··· 3 4 5 6 7 다음