인터넷 통신\*\* 클라이언트에서 다른 클라이언트로 데이터를 보낼 경우, 위성, 케이블 등과 같은 인터넷 망을 거쳐서 상대 컴퓨터로 도달하게 된다.인터넷 망은 단순하지 않아, 중간에 수많은 노드를 거쳐서 서버 컴퓨터에게 도착한다.웹 통신 과정이 어떤 규칙으로 목적지까지
자바스크립트 언어만의 고유 개념은 아님.외부에 있는 변수가 내부에 있는 함수와 함수 호출한 후에도 종료되지 않고 계속 참조 하는 것.외부의 변수와 내부의 함수가 끊기지 않고 연결고리가 계속 이어져 있는 것.const external = () => { let numbe
var a = 123; // 전역변수console.log(a);{ var a = 333; // 전역변수 --> 함수 레벨 스코프, var 키워드는 중복이 허용. 호이스팅 O, 함수가 아닌 변수 선언은 모두 전역.}console.log(a);function A() {
function Person(name, age) { this.name = name; this.age = age;}Person.prototype.sayHi = function () { console.log('hihi');}const p1 = new Per
// javascript는 객체지향 언어// 다만 다른 언어와는 달리 프로토타입 상속에 기반을 둔 OOP 언어. --> Class 문법 지원// 상속의 필요성.. 프로토타입 체이닝을 통해// 가장 큰 목적은 '재사용성'// 이미 부모쪽에서 정의 된 속성과 메서드을 그대
위 제너레이터 함수를 호출 하면 바로 코드가 실행되는 것은 x --> 호출하면 '이터레이터(iteraor) 객체'를 반환iterator 반복자 객체를 반환 --> 보통 it 또는 iter 라는 이름으로 받는다.객체니까 내부적으로 어떤 메서드를 가지게 되는데 ... ne
document 크기 가져오기event.clientX: 현재 창 기준 X 좌표값event.pageX: 브라우저 전체 (스크롤 포함) 기준 X 좌표 값document.documentElement.clientWidth: 현재 창 기준 넓이document.documentEl
대게 혼란이 있었던 부분은 if문과 함께 ||, && 를 사용하다 보니, 해당 연산자가 true나 false를 반환해주는 연산자로 오해했다..하지만 이는 자바스크립트에서는 옳지 못한 표현이다..결론부터 말하자면 논리연산자는 피연산자 중 하나를 반환한다!\-> 방향으로
merge sort는 quick sort 와 비슷하게 분할 정보 알고리즘의 하나이며 quick sort는 피벗의 값에 따라 편향되게 분할 될 수 있지만 merge sort는 안전하게 반절씩나눈다는 점에서 최악의 경우에도 O(nlogn)의 시간 복잡도를 보장함. 병
웹 화면 설계를 하는 중 기존에는 ppt나 아이패드로 그려서 설계를 해왔었다..디자이너나 ui/ux 개발자가 아닌 내가 웹 프론트엔드 개발을 하면서 화면설계를 해야하는 상황이여서 입문자용 프로토타입 tool을 사용해야겠다는 생각이들었다.프로젝트를 생성하여 작업 가능작업
App-routing.module.ts Routes forRoot forChild loadChildren 앵귤러 프레임워크에서 라우팅관련해서 자주 접하던 메소드들에 대해서 알아보고 라우팅 path에 대해서도잠시나마 삽질 했던 부분에 대해서 기억하고자 글을 남깁니다.기
타입시스템은 '구조적으로 타입이 맞기만 하다면 이를 허용.. 이를 구조적 타이핑다른 java, c이는 javascript 코드의 일반적인 작성 방식에 따라 설계되었다.js는 함수 표현식, 객체 리터럴 같은 익명 객체를 사용하기 떄문에 관계의 타입을 명목적인 타입 시스템
분할정복 알고리즘을 사용한 정렬로써 알고리즘 이름 대로 빠른 정렬에 속한다.배열 가운데서 하나의 원소를 고른다. (고른 원소를 피벗이라 함)피벗 앞에는 피벗보다 값이 작은 모든 원소들이 오고, 피벗 뒤에는 피벗보다 값이 큰 모든 원소들이 오도록 피벗 기준으로 배열을 둘
마치 거품이 일어나듯이 연쇄적으로 자기 자리를 찾아간다고 해서 버블 정렬이란 이름이 붙여졌다.따라서 버블정렬의 특징은 n회차 돌때마다 오른쪽의 n번째 자리가 확정된다는 것이다.실무에서는 거의 적용되지 않는 알고리즘입니다. javascript를 주로 사용하는 저로써는 기
오픈 소스 버전 관리 시스템 (VCS: Version Control System)로컬에서 버전 관리소프트웨어 개발 및 소스 코드 관리에 사용 즉 로컬에서 사용하는 버전 관리 프로그램, 여러 사용자와 작업을 공유할 수는 없다.git 저장소를 위한 웹기반 호스팅 클라우
조합 서로 다른 n개의 물건에서 순서를 생각하지 않고 r개를 택할 때, 이것은 n개에서 r개를 택하는 조합이라 하고, 이 조합의 수를 기호로 nCr와 같이 나타낸다. 바로 예를 살펴보도록 하자. 4Combination3 = 4C3을 코드로 구현한다면 다음과 같은 인풋과
웹 애플리케이션의 클라이언트 사이드 자바스크립트는 브라우저에서 HTML, CSS와 함께 실행된다. 따라서 브라우저 환경을 고려할 때 더 효율적인 클라이언트 사이드 자바스크립트 프로그래밍이 가능해진다.이를 위해 브라우저가 HTML, CSS, 자바스크립트로 작성된 텍스트
위 testFunc 함수를 실행해보면 에러가 발생한다...왜일까..? 언뜻 보면 옳은 코드인것 같지만아래와 같이 발생한 에러를 보자..위 코드는 모두 result1/result2에 할당 할 수 없다는 에러가 발생한다..이 이유는 컴파일러 입장에서 testFunc 함수가
심볼은 객체의 고유한 식별자ECMAScript 2015부터 'Symbol' 이라는 새로운 원시타입이 도입.Symbol은 고유한 식별자로서 사용되며, 한번 생성하면 복사 하거나 변경할 수 없음.보통 Symbol의 사용 목적은 객체의 고유한 프로퍼티 키를 만들기 위해 사