최근 유데미 리액트 강의를 들으면서 포인터 개념에대해서 알게되어서 정리하게 되었습니다.제가 이해하는걸 적은것이니 틀릴수도 있습니다.포인터란? 객체를 복사했을때 원본객체의 값을 변경하면 복사 객체도 영향을 받게된다.객체를 복사했을때 그 원본객체의 메모리에 할당된 값을 가
optional chaining 연산자는 참조나 기능이 undefined 또는 null일 수 있을 때 연결된 객체의 값에 접근하는 단순화할 수 있는 방법을 제공한다.예를 들어 리액트를 사용한다고 쳤을때, user를 state에 불러오는 페이지가있다. 근데 가끔가다 us
코딩애플의 자바스크립트 강의를 보며 정리한 내용호이스팅 현상이란, 자바스크립트는 변수나 함수의 선언부분을 변수의 범위 맨 위로 강제로 끌고가서 해석해주는데, 이것을 호이스팅이라고 한다.잠깐! 변수,함수의 선언이란?변수의 선언 : var 이름; let 나이; const
var 변수는 존재 범위가 function이다.let 변수는 존재 범위가 거의 모든 중괄호 {} 이다.값이 재할당 불가능하다.한마디로 const로 변수 만들면 나중에 등호를 이용해 값 변경하는게 안된다는 소리다.
해냈다..참고자료 : 한음여러 삽질, 고난과 인내의 시간을 걸쳐 마침내 원하는 방향으로 나아가게되었다.프론트server쪽 코드routermulter누가 성공과 실패는 한 끗 차이라고했는데 이번에 뼈저리게 느낀것 같다.formData를 사용해야한다는 정답에 근접을했고,
실행할함수.apply(적용할곳);person.hello()라는 함수를 person2에서도 쓰고싶을때의 상황.(직접 코딩해서 집어넣어도되나 그게 불가능한 경우나, 귀찮은 경우 apply를 사용할 수 있다.)apply는 이 함수를 실행하는데.. 저기 오브젝트에다가 적용해서
그럼 위 코드 상태에서 plus(1,2); 를 해주면 어떻게될까?결과는 3이 나온다. 즉 defualt 파라미터는 b라는 값을 안넣었을때 설정해주는 용도이다.참고로 자바스크립트는 강력하게 규제를 안해주기때문에 아래와 같이 사용해도 에러가 안난다. 하지만 아무것도 안넣으
코딩애플 보면서 정리했습니다.array나 object 자료형 왼쪽에 붙일 수 있으며, 괄호 벗기기용 연산자이다.예를들어 ...1,2,3 이렇게 쓰면 그 자리에 1,2,3이 남는다.주로 array나 object 자료형을 복사할 때 많이 사용한다.data1에 있던 자료들을
자바스크립트의 자료형( 문자, 숫자, array, object등)은 자료형을 크게 Primitive 와 reference 타입등 두가지로 분류한다. 자료 자체가 변수에 저장되는 자료들이다. (변수에 직접 저장됨)문자,숫자 등등이 대표적인 Primitive data ty
자바스크립트는 클래스라는 개념이 없다.그래서 기존의 객체를 복사하여 새로운 객체를 생성하는 프로토타입 기반의 언어이다.이렇게 생성된 객체 역시 또 다른 객체의 원형이 될 수 있다.부모의 유전자역할이라고 보면된다.즉, 자식들이 물려받을 수 있는 유전자다.대표적으로 sor
Object.create(부모object);자식.name 하면 'Kim'이 출력되고 자식.age 하면 50이 출력된다.아래 코드처럼하면 자식.age은 20이된다.위의 코드에서 왜 부모로부터 상속받은 50이라는 age가 출력되지않았나?자바스크립트 오브젝트 자료형에서 특정
혹은 prototype에 추가하려면..
코딩애플 강의를 나중에 제가 다시 되새김질 하기 위해서 작성했습니다.얕은 의미로는 오브젝트 내의 함수들을 괄호없이 쓸 수 있게 만들어주는 키워드인데,깊숙히 들어가면 데이터의 무결성을 보존하기 위해 쓰는 키워드라고 보면된다.요즘 원본 데이터는 immutable 하는게 대
Destructuring(구조 분해 할당)란, MDN에서 말하기를, "배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 javascript표현식" 이라고 한다.쉽게 말해서 Array, Object 자료형에 있는 자료들을 구조 분해 할당을하면, 변
동기식 처리란? 한번에 코드 한줄씩 차례차례 실행된다는 뜻이다.웹 브라우저는 stack이라는 코드 실행 공간에서 코드를 한줄한줄 차례로 실행시킨다.하지만 자바스크립트는, 비동기처리 (asynchronous)라는 것도 가능하다. setTimeOut()같은 특수한 코드들을
성공/실패 판정 전에는 이라고 나오며,성공 후엔 , 실패 후엔 가 나온다.성공을 실패나 대기상태로 다시 되돌릴 순 없다.Promise는 비동기적 실행과 전혀 상관이 없다.일종의 디자인 패턴일 뿐이다.Ex) 10초 걸리는 연산을 해결될 때 까지 Queue(대기실)에 제겨
반복문은 용도가 2개라고 보면 된다고한다.코드 단순 반복자료형에 담긴 자료들을 하나씩 꺼내고 싶을 때for in 반복문은 Object 자료형에 저장된 자료들을 하나씩 꺼내고 싶을 때 사용한다.참고로 key는 변수명이고, 사용자가 마음대로 작명하면된다.for in 반복문
사용법?. 왼쪽 값이 null 혹은 undefined인 경우 마침표를 찍지말고 undefined를 남겨달라는 뜻이다.주로 에러없이 안전하게 데이터를 꺼낼 때 사용한다.사용법?? 왼쪽 값이 null,undefined일 경우 오른쪽을 보여달라는 뜻이다.한마디로 user ?
모던자바스크립트를 보며 정리했습니다. 메서드 객체 프로퍼티에 할당된 함수를 메서드(method)라고 부르는데, 아래 코드에서 user에 할당된 sayHi가 메서드이다. 메서드는 아래와 같이 이미 정의된 함수를 이용해서 만들 수도 있다.
함수를 바로 실행시킬 수 있는 작은 마법이렇게하면 useEffect에서 따로 함수 선언 할 필요없이 async를 사용 할 수 있다.