브라우저 구성요소 > window + document + navigator 상속관계 window <- document <- c1.html : document는 c1.html 전체를 받는 객체이다. 브라우저는 인터프리터의 역할을 한다. :태그는 보이지 않고 마킹된
학습 목표 : #/page/이런 형태로 들어와 있으면 이게 0보다 크면 page라고 하는 해시 변시변경이라는 걸 확인 할 수 있다. 전체코드 문자열 참고 주석 뺀 버전 이전페이지 구현 이전 페이지를 눌렀을 때, 어떤 함수가 동작하는가? 해당 함수에서 이
boardSellAccount.htmlboard1.js사용자에 의해 이벤트가 발생하면 핸들러에 의해 바로 자바스크립트를 불러온다.그 후 자바스크립트에서는 XmlHttpRequest 객체를 이용하여 서버로 요청을 보내는데, 그동안 웹 브라우저는 응답을 기다릴 필요 없이
하루에 매일 3시간씩 ! 객체에서 사용하는 for문은 for ~ in 문으로 진행한다. 순번에 해당하는 이름의 변수가 옴 in xx(객체)일반 함수에서 this -> window중첩 함수에서 this -> window이벤트에서 this -> 이벤트 객체메소드에서 th
변수 b의 값에 변수 a의 값이 복제된 것이다. 원시데이터 타입인 경우에 복제가 일어난다. \- String,number,Boolean,null,undefined 변수 b에 담긴 객체의 id값을 2로 변경 했는데, a.id값도 2가 됐다.데이터가 원시형이면 그 안에
새로운 객체의 프로퍼티 형태나 중첩 함수 그 자체로 반환 될 수 있음.반환된 중첩함수는 어디서든 호출해서 사용 할 수 있음.외부 변수에 접근할수있다는 사실은 변함 없음getFullName() : 이름 전체를 반환해주는 중첩함수실행중인 함수, 코드블록 {...} 스크립트
myNumber라는 식별자는 값 23를 식별 할 수 있어야함.myNumber는 23이 저장되어 있는 메모미 주소를 기억함.(여기선 (0012CCGWH80))식별자는 값이 아니라 --> "메모리 주소"를 기억함.변수, 함수, 클래스 등의 이름은 모두 "식별자"변수이름 :
parents(): 자신부터 document root까지 검색을 하기 때문에 검색 결과가 1개 이상임parents("tr")0 이런식으로 사용closest() : 단 하나의 결과만을 리턴함선택한 요소를 포함하면서 가장 가까운 상위 요소를 선택해당 요소의 부모 엘리먼트
두 곳 모두에서 변경 사항이 반영usedTrans 배열에 새 객체를 할당 했기 때문에, eTrans에 영향을 끼치지 x
call bind
함수는 자바스크립트에서 객체이다.Person 객체가 생성된다.Person\`s Prototype이 생성된다.constructor를 만들고 서로가 상호참조를 한다.이렇게 객체가 생성됨.kim.\_\_proto\_\_으로도 접근 할 수 있음name값이 있다면 출력함.만약에
PersonPlus 보기이렇게 하면 안된다.this에 집중해야됨.Person.call이 하는 역할은 super(name,first,second); 이 부분을 의미한다.2StepPersonPlus 객체를 생성kim.avg()를 실행하면?sum이라는 메소드가 없어서 오류
같은 상황에서 let은 오류발생var는 선언하기 전에 사용 가능var로 선언한 모든 변수는 코드가 실제로 이동하진 않지만, 최상위로 끌어올려진것처럼 동작 = 호이스팅 발생할당은 호이스팅 되지 않는다.같은 상황에서 let은 오류let과 const는 호이스팅 되지 않는걸까
객체에서 사용할 수 있는 메소드그래서 Object.assign()이 필요함.빈 객체는 초기값, 두번째 매개변수부터 들어온 값이 초기값에 병합됨첫 번쨰 인자가 빈 값이 아닌 경우병합을 하는데 키가 갖다면? 덮어쓰게 됨두개 이상의 객체를 합쳐보자.키 배열 반환
toUpperCase() indexOf(text) > 주의 splice
특정 요소 지움n번째 요소부터 m개 지워라특정 요소 지우고 x추가두 번째 요소에 0를 넣으면 아무것도 지우지 않고 중간에 새로운 요소 추가함.삭제된 요소 반환한다.n부터 m까지 반환괄호안에 아무것도 넣지 않는다면?배열 복사가 이뤄진다.arr.concat(arr2,arr
출처 | https://heycoding.tistory.com/4배열 구조 분해 공백과 쉼표를 사용하여 필요하지 않은 값들은 무시한다.
출처 | https://www.youtube.com/watch?v=lekNM8ldxno&list=PLZKTXPmaJk8JZ2NAC538UzhY_UNqMdZB4&index=10arguments란함수로 넘어 온 모든 인수에 접근함수 내에서 이용 가능한 지역변수le
출처 | https://www.youtube.com/watch?v=tpl2oXQkGZs&list=PLZKTXPmaJk8JZ2NAC538UzhY_UNqMdZB4&index=11내부 -> 전역 Lexical 환경까지 찾는다.먼저 내부 렉시컬 환경에서 찾고 / 외부
모든 객체는 proto접근자 프로퍼티 를 통해 자신의 프로토타입Prototype 내부 슬롯에 간접적으로 접근 가능\_\_prototype\_\_은 접근자 프로퍼티이다.\_\_proto\_\_는 접근자 프로터피이며, 간접적으로 접근할 수 있는 수단을 제고\_\_proto
use strict 모드를 반영하지 않을 경우 일반적인 자바스크립트 작동 방식이다. (암묵적 전역 현상)자바스크립트 언어의 문법을 좀 더 엄격히 적용하여 오류를 발생시킬 가능성이 높거나, 자바스크립트 엔진의 최적화 작업에 문제를 일으킬 수 있는 코드에 대해 명시적인 에
자바스크립트 객체는 크게 3가지로 분류 된다.표준 빌트인 객체 : ECMAScript 사양에 정의된 객체를 의미, 애플리케이션 전역에 공통 기능을 제공, 전역 객체의 프로퍼티로 제공되므로 별도의 선언 없이 전역 변수처럼 언제나 참조가능호스트 객체 : ECMAScript
this : 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수 다.this 를 통해 자신이 속한 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드를 참조할 수 있다.this 는 자바스크립트 엔진에 의해 암묵적으로 생성된다.객체 리터럴의 메소드
자바스크립트에 배열이라는 타입은 존재 x자바스크립트의 배열은 객체이지만, 일반 객체와 구별된 특징 존재차이점은 무엇일까?값의 순서와 length 프로퍼티를 갖는다는 점이 가장 큰 차이점이다.자바스크립트 배열은 배열이 아니다?배열은 2가지로 구분 가능밀집 배열희소 배열자
이터러블의 Symbol.iterator 메소드가 반환한 이터레이터는 next 메소드를 갖음next 메소드 호출하면 이터러블을 순차적으로 한 단계씩 순회하며 순회 결과를 나타내는 이터레이터 리절트 객체를 반환리절트 객체의 value 프로퍼티는 현재 순회 중인 이터러블의
가변 인자 함수는 매개변수 개수를 확정할 수 없다.ex) Math.max 메소드배열 자체를 인수로 넘기면 최대값을 구할 수 없음 --> NaN 반환배열을 펼처서 요소들의 목록을 넘겨야 한다.이전에는 Function.prototype.apply 메소드로 해결함스프레드 문
JSON : 클라이언트- 서버 간의 HTTP 통신을 위한 텍스트 테이터 포맷객체를 ---> Json 포맷의 문자열로 변환 클라이언트가 서버로 객체를 전송하려면 (문자열화 필요) 이 때 사용JSON 포맷의 문자열 --> 객체로 변환한다.서버로 부터 클라이언트에게 전송된
ES6에서 비동기 처리를 위한 새로운 패턴으로 프로미스를 도입했음.g의 값은 바뀌었을까?실제로는 변수 g의 값은 변경되지 않는다.setTimeout의 콜백함수가 콜 스택으로 이동해서 실행되는 시점에는 이미 console.log 함수가 끝난 시점이기 때문에 따라서 비동기
본 포스팅은 필자가 공부한 내용을 적는 공간이다.일을 하다가 Obejct 객체 <-> Array배열로 변환하는 부분에 대해서 미숙함을 느꼈고, Object의 key,value를 어떻게 꺼내서 활용하는지 작성하고자 한다.객체엔 map, filter와 같은 배열 전용