목록JavaScript (7)
HYEWON JUNG의 개발일지
Math.abs() 절대값 반환 리턴값이 0또는 양수면 그대로 리턴값이 음수면 반대값인 양수로 반환한다. function mathAbs(a, b) { return Math.abs(a - b); } function origin(a, b) { return a - b; } console.log("Abs=>", mathAbs(2, 5)); //3 원래 -3이지만 3으로 반환 console.log("origin=>", origin(2, 5)); //-3 console.log("Abs2=>", mathAbs(5, 2)); //3 console.log("origin2=>", origin(5, 2)); //3 3 그래도 반환 function one(x) { return Math.abs(x); } console.log(..
1. 호출 시점에 대한 제어권 let count = 0; let timer = SetInterval(function(){ console.log(count); if(++count>4)ClearInterval(timer); },300); //SetInterval이 함수 실행 제어권을 가지고 있다. //만약 제어권을 우리가 가지고 있다면 함수는 1번 돌고 멈춘다. let count = 0; let Func = function(){ console.log(count); if(++count>4)ClearInterval(timer); } let timer = SetInterval(Func,300); //이렇게 SetInterval의 매개변수를 따로 선언함. 위와 같은 식 // 만약 호출을 Func(); 로만 했다면 ..
실행 컨텍스트 = 코드에 제공할 환경 정보들을 모아놓은 객체 => 선언된 변수를 위로 끌어올리고 /hoisting => 외부환경정보를 구성하고 => this를 바인딩 콜스텍 = 실행콘텍스트가 담기는 장소 => 코드의 순서를 보장함 실행콘텍스트가 있는 장소를 대표적으로 스택과 큐로 나눌 수 있는데 스택은 Last in First out 컵 모양을 생각하면 되고 , 큐는 First in First out 위아래가 뚫린 원기둥이라고 생각하면된다. VariableEnvironment => 현재 실행할 코드에 식별자 정보 record를 지님 => outer를 지님 => LexicalEnvironment의 snapshot LexicalEnvironment => 현재 실행할 코드에 식별자 정보 record를 지님 =..
데이터 타입 기본형 Number String Boolean Null undefined symbol 참조형 > Object Array Function Date RegExp Map/WeakMap set / WeakSet 변수 vs 상수 변수 = 변수영역에서 메모리 변경 가능 상수 = 변수영역에서 메모리 변경 불가능 가변하다 vs 부변하다 가변하다 = 데이터 영역에서 메모리 변경 가능 불변하다 = 데이터 영역에서 메모리 변경 불가능 기본형 변수 영역 1002 1003 1004 1005 1006 빈칸을 찾아가기 origin / 4001>4002 print/4002 > 4003 데이터 영역 4001 4002 4003 4004 4005 test real second 불변 Ex) let origin = test ; ..

데이터 구성, 검색 , 사용을 효율적으로 처리 => key / value = key에 어떤 데이터 타입도 들어올 수 있다. => Map은 key 가 정렬된 순서로 저장되기 때문 => 기능 (검색, 삭제, 제거, 여부확인) => 반복 method (keys(), values(), entries()) const myMap = new Map(); myMap.set ('key', 'value'); // 넣기 . . . myMap.get('key')//가져오기 ↓↓ const myMap = new Map(); myMap.set("one", 1) myMap.set("two", 2) myMap.set("three", 3) //반복자(keys, values, entries) //반복자를 풀지 않고 그대로 쓸 경우 co..
(1)변수에 함수를 할당할 수 있다. const sayhello = function(){ console.log('hello'); } 장점 sayHello 란 이름을 가지고 어디서나 함수 호출을 할 수 있다. 객체에 넣을 수도 있고 매개변수로 지정할 수도 있다. =>함수가 마치 값으로 취급된다. // 함수가 나중에 쓰일 수 있도록 조치 되었다. (2)함수를 인자로 다른함수에 전달할 수 있다. function callFunction(func){ func(); //매개변수로 받는 변수가 함수다 } const sayHello = function(){ console.log('hello'); } callFunction(sayHello); => 콜백함수 : 매개변수로써 쓰이는 함수 => 고차함수 : 함수를 인자로 받..