분류 전체보기 322

[Angular] Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: '' 해결 방법

URL parameter에 특수기호가 들어있으면 router 설정을 제대로 해줬다고 생각이 들어도 다음과 같은 에러가 발생할 수 있다. 나 같은 경우는 ( ) 위 괄호들이 문제를 일으켜 다음과 같은 에러를 뱉고, 페이지가 그려지지 않았다. ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'MSBlaster%2520Worm,%2520Messenger...' Error: Cannot match any routes. URL Segment: 'MSBlaster%2520Worm,%2520Messenger...' at ApplyRedirects.webpackJsonp../node_modules/@angular/route..

Array.prototype.splice() 사용법

Array.prototype.splice() - 배열의 기존 element를 [ 삭제 / 교체 / 추가 ]하여 배열의 내용을 변경 - 제거할 element의 수와 추가할 element의 수가 다른 경우 배열의 길이는 달라짐 문법 array.splice(start[, deleteCount[, item1[, item2[, ...]]]]) Parameter start - 배열의 변경을 시작할 인덱스 - 음수인 경우 array.length - n번째 인덱스와 동일 - 설정한 값이 배열의 길이보다 클경우 0으로 설정 deleteCount (옵션) - 배열에서 제거할 element 개수 - 해당 값을 생략하거나 값이 (array.length - start)보다 크면 start 부터의 모든 요소를 제거 - 0이하이면..

브라우저 정의, 특징, 동작 원리

브라우저 (Browser) - HTML과 CSS 명세에 따라 HTML 파일을 해석해서 표시하는 도구 ex) 모질라, 파이어폭스, 크롬, 익스플로러, 엣지, 사파리 등 ※ 브라우저의 명세는 웹 표준화 기구인 W3C(World Wide Web Consortium)에서 정함 브라우저의 주요 UI - URI를 입력할 수 있는 주소 표시줄 - 상태 표시줄 - 도구모음 - 북마크 - 다양한 버튼 : 이전 버튼, 다음 버튼, 새로 고침 버튼, 현재 문서의 로드를 중단할 수 있는 정지 버튼, 홈 버튼 ※ 표준 명세가 없음에도, 수 년간 서로의 장점을 모방하다가 기준이 되어버림 브라우저의 주요 기능 - 사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시 ※ 자원 : 주로 HTML 문서, PDF나 이미지 등 ※ 자원의..

Web 2020.09.29

Strict mode(엄격 모드), use strict 란?

Strict mode (엄격모드) - ECMAScript 5에서 소개됨 - JavaScript의 제한된 버전을 선택하여 암묵적인 느슨한 모드(Sloppy mode)를 해제하기 위한 방법 특징 - 엄격모드를 지원하지 않는 브라우저(Internet Explorer 10 버전 이하)에서는 엄격 모드의 코드가 다른 방식으로 동작 (그렇기 때문에 엄격 모드에 의존하면 안됨) - 엄격모드의 code와 비엄격모드의 code는 공존 가능 => 엄격 모드를 일부만 선택하는 것이 점진적으로 가능하게 됨 - 전체 스크립트 또는 부분 함수에 적용 가능 - {} 괄호로 묶여진 block 문, context에 적용되지 않음 엄격모드 사용 시 JavaScript symantic의 변화 1. 기존에 조용히 무시되던 에러들이 thro..

compiler VS interpreter

Compiler - 고급 프로그래밍 언어로 작성된 코드를 machine code로 변환하는 컴퓨터 프로그램 - 사람이 읽을 수 있는 코드를 컴퓨터 프로세서가 이해하는 언어(바이너리 1 또는 0비트)로 변환하는 프로그램 - 컴퓨터는 machine code를 처리하여 해당 작업을 수행 - compiler는 작성된 프로그래밍 언어의 구문 규칙을 준수해야 함 - compiler는 해당 프로그램에서 발견된 error는 수정할 수 없음 => 컴파일 불가 - 프로그램이 실행되기 전, 한번에 모든 코드를 machine code로 변환 - interpreted 코드 보다 빠르게 실행됨 - compile을 수행한 후 모든 오류를 한꺼번에 표시 - translation linking-loading model 기반 Inter..

Web 2020.09.28

JavaScript의 Decorator

[ Decorator ] - 2020년 9월 meeting에서 TC39에 제시될 새로운 제안 - 가장 단순하게는 코드의 한 부분을 다른 코드로 감싸는 방법 (= 장식) - 정의 중에 클래스 요소, 기타 JavaScript 구문 양식에서 호출되는 함수, 잠재적으로 decorator가 반환한 새 값으로 래핑(또는 대체)됨 ※ 사실 이미 다른 방식으로 decorator의 느낌처럼 JavaScript에서 사용 가능했음..(아래 처럼) function loggingDecorator(wrapped) { return function() { console.log('Starting'); const result = wrapped.apply(this, arguments); console.log('Finished'); ret..

[Sqlite] Node.js Sqlite run() callback 받는 법

sqlite3 npm 에서 run함수를 쓸 때, callback을 받고 싶었다.. sqlite3 npm 페이지로 들어가니까 callback이 따로 없네..? 그래서 node-sqlite3 페이지에 들어가서 봄,, ㅇrㅎr- 결론) db.run(query_string, parameter, function(err, data) { ... }); parameter가 없으면 null 추가해주고 쓰면 된다. 출처) https://stackoverflow.com/questions/10022984/nodejs-node-sqlite3-run-callback-not-working https://github.com/mapbox/node-sqlite3/wiki/API

Database 2020.09.25

[Node.js] 싱글 스레드(Single-thread)와 이벤트 루프(Event loop)

Node.js는 Chrome의 V8 JavaScript 엔진 에 구축 된 JavaScript 런타임 비동기 이벤트 기반 JavaScript 런타임 인 ​​Node.js는 확장 가능한 네트워크 애플리케이션을 빌드하도록 설계됨. Event loop - JavaScript가 싱글 스레드라는 사실에도 불구하고, 가능할때마다 작업을 시스템 커널로 offload하여 non-blocking IO 작업을 수행할 수 있도록 함 - 대부분의 최신 커널은 다중 스레드이므로 백그라운드에서 실행되는 여러 작업을 처리 가능 - 이러한 작업 중 하나가 완료되면, 커널은 Node.js에 적절한 콜백을 poll queue에 추가하여 실행되도록 함 - Node.js가 시작되면, 이벤트 루프를 초기화하고 제공된 input script를 ..

SQL DB와 No-SQL DB의 정의, 종류, 특징, 차이

RDB(관계형 데이터베이스, Relation Database) - key와 value들의 간단한 관계를 테이블화 시킨 데이터 베이스 - 1970년 에드거 F.커드가 제안 관계형 모델 - 데이터를 column과 row(= record, tuple)를 이루는 하나 이상의 table(또는 relation)로 정리 - primary key로 각 row를 식별 - 일반적으로 table은 하나의 entity type을 대표 - row는 entity 종류의 instance를 대표 - column은 instance의 속성이 되는 값을 대표 RDBMS(관계형 데이터 베이스 관리 시스템, relation database management system) - RDB를 관리하기 위한 SW 또는 System 종류 - Oracl..

Database 2020.09.24