JavaScript
-
JSON(Javascript Object Notation) JSON은 JavaScript Object Notation 의 약자로 데이터를 저장하거나 전송하기 위한 경량 DATA 포맷이다. JSON은 DATA 포맷이라는 단어처럼 데이터를 표현하기 위한 방법일 뿐이다. JSON 표현식은 사람과 기계 모두 이해하기 쉬우며 용량이 작아 최근에는 XML을 대신해 JSON이 데이터 전송에 많이 사용한다. XML vs JSON XML(eXtensible Markup Language) HTML과 비슷한 문자 기반의 마크업 언어이다. 사람과 기계 모두 읽기 편한 구조로 되어 있다. 하지만 HTML 처럼 데이터를 보여주는게 목적이 아닌 데이터를 저장하고 전달할 목적으로 만들어졌다. XML의 특징은 태그명을 사용자가 직접 ..
JSON 객체 (JSON.parse(), JSON.stringify())JSON(Javascript Object Notation) JSON은 JavaScript Object Notation 의 약자로 데이터를 저장하거나 전송하기 위한 경량 DATA 포맷이다. JSON은 DATA 포맷이라는 단어처럼 데이터를 표현하기 위한 방법일 뿐이다. JSON 표현식은 사람과 기계 모두 이해하기 쉬우며 용량이 작아 최근에는 XML을 대신해 JSON이 데이터 전송에 많이 사용한다. XML vs JSON XML(eXtensible Markup Language) HTML과 비슷한 문자 기반의 마크업 언어이다. 사람과 기계 모두 읽기 편한 구조로 되어 있다. 하지만 HTML 처럼 데이터를 보여주는게 목적이 아닌 데이터를 저장하고 전달할 목적으로 만들어졌다. XML의 특징은 태그명을 사용자가 직접 ..
2022.05.20 -
자바스크립트자바스크립트는 웹페이지에 생동감을 주기 위한 프로그래밍 언어이다. 웹페이지를 그리기 위한 HTML, CSS는정적인 언어이다. 정적이라는 것은 이 언어들은 브라우저를 통해서 웹페이지를 화면에 그려주고 나서 이 화면을변경할 수 있는 방법이 없다는 의미이다. 어떤 버튼을 클릭했을 때 경고창을 띄우는 등 이벤트를 스스로 발생시킬 수없다. 이러한 역할을 하는게 자바스크립트 이다. 자바스크립트를 실행시키기 위해선 자바스크립트 런타임 환경이 필요하다.런타임 환경이라는건 프로그래밍 언어를 실행시키기 위한 환경을 말한다. 이러한 자바스크립트 런타임 환경을만들기 위해선 자바스크립트 엔진이 필요하다.대표적인 예로는 Chrome 웹브라우저와 Nodejs에서 사용하는 Google의 V8 엔진이다.모든 웹브라우저에서 ..
자바스크립트 동작 원리자바스크립트자바스크립트는 웹페이지에 생동감을 주기 위한 프로그래밍 언어이다. 웹페이지를 그리기 위한 HTML, CSS는정적인 언어이다. 정적이라는 것은 이 언어들은 브라우저를 통해서 웹페이지를 화면에 그려주고 나서 이 화면을변경할 수 있는 방법이 없다는 의미이다. 어떤 버튼을 클릭했을 때 경고창을 띄우는 등 이벤트를 스스로 발생시킬 수없다. 이러한 역할을 하는게 자바스크립트 이다. 자바스크립트를 실행시키기 위해선 자바스크립트 런타임 환경이 필요하다.런타임 환경이라는건 프로그래밍 언어를 실행시키기 위한 환경을 말한다. 이러한 자바스크립트 런타임 환경을만들기 위해선 자바스크립트 엔진이 필요하다.대표적인 예로는 Chrome 웹브라우저와 Nodejs에서 사용하는 Google의 V8 엔진이다.모든 웹브라우저에서 ..
2022.03.29 -
$(function(){}) 아래 구문의 축약형이다. 페이지 로딩이 끝났을 때 실행될 함수를 등록한다. 실행 예) $(function(){ }) $(document).ready(funtcion(){}) DOM(Document Object Model)이 완전히 불러와지면 실행되는 이벤트이다. 쉽게 말하자면 페이지가 모두 로드된 후 괄호안의 함수를 실행한다. 실행 예) $(document).ready(function(){ });
$(function(){}) 과 $(document).ready() 의 차이$(function(){}) 아래 구문의 축약형이다. 페이지 로딩이 끝났을 때 실행될 함수를 등록한다. 실행 예) $(function(){ }) $(document).ready(funtcion(){}) DOM(Document Object Model)이 완전히 불러와지면 실행되는 이벤트이다. 쉽게 말하자면 페이지가 모두 로드된 후 괄호안의 함수를 실행한다. 실행 예) $(document).ready(function(){ });
2022.03.14 -
1. forEach 와 return 문 let array = [1,2,3,4]; array.forEach((item, index) => { console.log(item); if(item == 2){ return; } }) 위 코드를 보면 2까지 출력한 후 반복문이 종료될거 같지만 종료되지 않으며, 배열의 크기만큼 출력한 후 종료된다. forEach 반복문의 return은 아무런 영향을 끼치지 않는다. 공식 MDN 문서의 forEach에 관한 내용은 아래와 같다. 예외를 발생시키는 경우를 제외하고는 forEach() 루프를 중단시킬 방법은 없다. 만약 그러한 목적으로 forEach() 메소드를 사용하는것은 잘못된 방법이다. 공식 MDN - forEach 위 설명과 같이 forEach() 반복문은 도중에 ..
반복문과 return1. forEach 와 return 문 let array = [1,2,3,4]; array.forEach((item, index) => { console.log(item); if(item == 2){ return; } }) 위 코드를 보면 2까지 출력한 후 반복문이 종료될거 같지만 종료되지 않으며, 배열의 크기만큼 출력한 후 종료된다. forEach 반복문의 return은 아무런 영향을 끼치지 않는다. 공식 MDN 문서의 forEach에 관한 내용은 아래와 같다. 예외를 발생시키는 경우를 제외하고는 forEach() 루프를 중단시킬 방법은 없다. 만약 그러한 목적으로 forEach() 메소드를 사용하는것은 잘못된 방법이다. 공식 MDN - forEach 위 설명과 같이 forEach() 반복문은 도중에 ..
2021.12.09 -
$emit emit은 하위 컴포넌트에서 상위 컴포넌트에게 이벤트를 전달하기 위해 사용한다. * 하위 컴포넌트에서 상위 컴포넌트로 이벤트 전달 this.$emit('이벤트 명', 값); * 상위 컴포넌트에서는 하위컴포넌트에서 넘어온 이벤트와 값을 처리 v-on:'이벤트 명'="methods 명" 예) modal.vue 삭제 날짜 ParendModal.vue
$emit$emit emit은 하위 컴포넌트에서 상위 컴포넌트에게 이벤트를 전달하기 위해 사용한다. * 하위 컴포넌트에서 상위 컴포넌트로 이벤트 전달 this.$emit('이벤트 명', 값); * 상위 컴포넌트에서는 하위컴포넌트에서 넘어온 이벤트와 값을 처리 v-on:'이벤트 명'="methods 명" 예) modal.vue 삭제 날짜 ParendModal.vue
2021.11.10 -
Dynamic Import 정적 import를 통해 모든 스크립트를 동시에 가져온다면 로딩 시간이 길어진다. 이러한 문제점을 보완하기 위해 ES6에서 필요한 스크립트를 필요한 시점에 가져와서 사용하도록 Dynamic Import를 정의했다. () => import('./components'); 예) vue router 설정할때의 예 import SearchLayout from '@/layout/search_index.vue' const SearchRouter = { path: '/search', name: 'Search', hidden: true, redirect: '/search/searchList', component: SearchLayout, meta: { title: '통합 검색', icon: '..
Dynamic ImportDynamic Import 정적 import를 통해 모든 스크립트를 동시에 가져온다면 로딩 시간이 길어진다. 이러한 문제점을 보완하기 위해 ES6에서 필요한 스크립트를 필요한 시점에 가져와서 사용하도록 Dynamic Import를 정의했다. () => import('./components'); 예) vue router 설정할때의 예 import SearchLayout from '@/layout/search_index.vue' const SearchRouter = { path: '/search', name: 'Search', hidden: true, redirect: '/search/searchList', component: SearchLayout, meta: { title: '통합 검색', icon: '..
2021.11.09