본문 바로가기
반응형

학습정리/자습59

poiemaweb 23강 복습( 클로저) 클로저 클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합이다. 자바스크립트는 렉시컬 스코프 : 자바스크립트는 함수를 어디서 호출했는지가 아니라 어디서 정의했는지에 따라 상위 스코프를 결정한다. 렉시컬 환경의 외부 렉시컬 환경에 대한 참조에 저장할 참조값을 결정한다 = 함수의 상위 스코프를 결정한다. 렉시컬 환경의 “외부 렉시컬 환경에 대한 참조”에 저장할 참조값, 즉 상위 스코프에 대한 참조는 함수 정의가 평가되는 시점에 함수가 정의된 환경(위치)에 의해 결정된다. = 렉시컬 스코프 함수 객체의 내부 슬롯 함수는 자신의 내부슬롯[[Environment]]에 자신이 정의된 환경, 즉 렉시컬 스코프의 참조를 저장한다. 외부 함수 밖에서 중첩 함수를 호출하더라도 외부 함수의 지역 변수에 접근할 수 있는데.. 2019. 10. 4.
리액트 51~55강 정리 useReducer state들을 한번에 관리하기 어렵기 때문에 사용 dispatch 안에는 액션이 들어감. 비동기 안에서 state를 변경하려면 useEffect를 사용한다 dispatch가 안에 있는 액션을 하는 것은 비동기이다. setState역할을 함 memo를 적용했는데도 리랜더링이 발생할때 useMemo를 사용하여 component자체를 기억해버리는 방법도 있다. //tictactoe.jsx import React, {useEffect ,useReducer , useCallback} from 'react'; import Table from './Table'; const initalState = { winner: '', turn: 'O', tableData: [ ['', '', ''], ['',.. 2019. 10. 3.
poiemaweb 20~21강 복습 전역객체 let이나 const 키워드로 선언한 전역 변수는 전역 객체 window의 프로퍼티가 아니다. 전역 렉시컬 환경의 선언전 환경 레코드 내에 존재한다. 전역 프로퍼티 Infinity 양/음의 무한대를 나타내늣 숫자값 NaN 숫자가 아님을 나타내는 숫자값 undefined 원시타입이다. 빌트인 전역 함수 eval(code) 괄호안에 있는 코드를 평가하고 실행하여 결과값을 반환한다. isFinite(testValue) 주어진 숫자가 유한수인지 확인하고 결과 반환 isNaN(testValue) 매개변수에 전달 된 값이 NaN인지 검사 하여 결과를 불리언타입으로 리턴 parseFloat(string) 부동소수점 숫자로 변환 문자열을 parseInt(string, radix) 진법을 나타내는 기수(radi.. 2019. 10. 1.
리액트 46~50강 정리 for문 안에 비동기함수를 사용할때 변수로 let을 선언하게 되면 let은 블록레벨 스코프를 지원하기 때문에 클로저문제를 해결 할 수 있음. Lotto class형 import React, { Component } from 'react'; import Ball from './Ball'; function getWinNumbers() { console.log('getWinNumbers'); const candidate = Array(45).fill().map((v,i) => i + 1); const shuffle = []; while(candidate.length > 0) { shuffle.push(candidate.splice(Math.floor(Math.random() * candidate.length).. 2019. 10. 1.
반응형