분류 전체보기(100)
-
js deep dive [13 scope]
유효 범위 변수의 유효 범위 와 함수의 유효 범위를 따로 생각 해야 한다. 어떤 공간에 변수를 선언하면 지역 스코프를 갖는 지역 변수를 만들게 된다. 이때 지역 변수는 선언된 부분과 선언된 하위 부분에서 유효 하다. 스코프에서 알아야 할 가장 중요한 부분은 case 1 : const print = "test"; function test() { const print = "value"; function out() { console.log(print); } out(); }` function. out() { console.log(print); } case 2 : const print = "test"; function test() { const print = "value"; out(); } function. ou..
2022.10.25 -
js deep dive [ 함수 마무리]
Ecmascript 에서 매개변수의 개수에 대해서는 명시적으로 제한되고 있지 않다. 하지만. 자바스크립트의 경우 함수를 호출 할 때 매개변수의 개수를 맞추지 않더라도 오류를 뱉지 않는다. 따라서 이에 대해서는 각자가 조건 처리를 통해서 에러를 처리해야 한다. 이말은 결국, 사용자가 어떤 입력을 할지에 대해서, 어떻게 대처를 할지를 개발자가 미리 정해야 한다는것 이라고 볼 수 있다. 따라서 매개변수의 개수는 정해지지 않았지만. 스스로가 처리 할 수 있는 개수가 좋을것 같다. 이는 결국 매개변수가 없는것이 가장 이상적이지 않을까 하는 생각을 할 수 있다. 책에서는 이상적인 함수는 한가지 일만 해야하며 가급적 작게 만ㄷ르어야 한다 라고 한다. 이때 매개변수가 많아서 이에 의해 다른 행위를 해야 한다면 이는 분..
2022.10.25 -
js deep dive [12 함수 part 01]
함수란 무엇일까 ? input 에 대하여 어떠한 행동을 한 뒤에 result 를 반환하는 녀석을 뜻한다. function add(a, b) { return a + b; } 와 같은 함수가 있다고 가정 하자 . 이함수는 들어온 입력 a, b 에 대해 더한값을 리턴 해주는 녀석을 뜻한다. 여기서 참 재미 있는 점은. 그냥 함수라고 표현하는 것이 아니라. add를 함수의 이름, (a, b) 를 함수의 매개변수 return (a + b)의 (a + b) 를 반환값 이란 이름을 통해서 정의 하고 있다. 왜 이렇게 정의를 하는 것일까? 이유는 앞에서 사용했던 것과 같이 객체는 mutable 한 것 이기 때문에 변화 할 수 있기 때문이다. 내부의 값이 변화 할 때도 사실 실질적인 값이 변화하는 것이 아니라 매개변수의..
2022.10.24 -
js deep dive [11장 정리 원시 값과 객체의 비교]
11 원시 값과 객체의 비교 숫자, 문자열 불리언 null, undefined, symbol, object 은 원시타입, 객체 타입으로 구분 가능하다. 예를들어서 let a 라는것에 0 을 할당 했다고 하자. 이때 0 은 원시 값으로 0이 할당 된다 . 이때 변수의 값을 10 으로 변경했다고 한다면 같은 주소의 값이 변경 되는 것이 아니라. 0x00000 번지에 0 이 저장 됐다고 한다면 0x00001 번지에 10을 저장하고 이 주소를 가르킨다고 볼 수 있다. 하지만 이 주소를 직접 찾아보고자 했는데 이는 확인 이 불가능했음. 그렇지만 일단. 자바스크립트의 경우 그런식으로 원본값의 변화를 일으키지 않도록 한다. 따라서 우리가 사용하는 상수와는 차이가 있음을 알 수 있다. Const obj = {} 의 경..
2022.10.24 -
js Deep dive [10장 객체.]
객체란. Javascript 의 대부분의 것 들은 object 이다. 여기서 제외된 것은 원시 값을 의미하고 이는 단하나의 값을 나타내는 것 을 의미한다. 따라서 원시값은 immutable value, Object 는 mutable value 라고 표현 가능. var count = { num : 0, increase : function () { this.num++; } } 프로퍼티. 이면서 함수인 경우. Method. 즉. 내부 동작을 정의하기 때문에 method 라고 설정. = 프로퍼티를 참조하고 조작할 수 있는 동작 . Js 에서 함수와 객체는 밀접한 관계를 가진다. 이것은 무슨 뜻일까. 함수로 객체를 생성하기도 하고, 함수가 객체 이기도 하다. ? 말이 잘 이해가 안됨. 조금더 생각해 볼 필요성 이..
2022.10.23 -
0614
in react useEffect를 이용하여 적용하는것과 function()을 바로 호출하는것의 차이. first code const onKeyDown = (e) => { if (e.key === "Enter") { setId(e.target.value); setLocalStorage(id); } } useEffect(() => { if (id === "") { return; } history('main', { state: { username: `${id}` } }) }, [id]) second code const onKeyDown = (e) => { if (e.key === "Enter") { setId(e.target.value); } } useEffect(() => { if (id === "") {..
2022.06.14