본문 바로가기

Developing Note/JavaScript3

[JavaScript] 이벤트와 동시성모델 JavaScript는 싱글 스레드 기반 언어라는 큰 특징을 가지고있다. 싱글스레드라는 말은 곧, 한가지의 작업만 처리할 수 있다는 말인데 실제 웹 브라우저를 사용하다 보면 동작되는 JavaScript들의 수많은 작업들이 동시에 처리되고 있는 것 처럼 보인다. 싱글 스레드라는데 어떻게 동시에 여러가지 처리하는 것 처럼 느껴질까? 이유를 살펴보기 전에 JavaScript에서 Server Side 언어로 인기있는 Node.js의 Wikipedia 설명을 보았다. JavaScript기반에 Non-blocking I/O와 단일 스레드 이벤트 루프를 통해 높은 처리 성능을 가지고 있다. 라고 설명이 된다. 그렇다면 단일 스레드 이벤트 루프가 무엇일까? 이때, 자바스크립트에서는 이벤트 루프라는 개념을 사용한다. 먼저.. 2018. 12. 2.
[JavaScript]ES6 Object 객체 /* ES6 */ let tree = { height: 10, color: 'green', grow() { this.height += 2; } }; tree.grow(); console.log(tree.height); /* result = 12 */ JavaScript 변수는 속성이라고 불리는 Object data types를 가질 수 있습니다. 또한, Object는 메소드라고 불리는 속성을 가질 수 있습니다. 기존 object안에 function()을 사용하려면 (:) 콜론을 사용했지만 ES6부터는 사용하지 않아도 됩니다. 사각 Bracket을 이용하면 [], 속성 이름을 지정할 수 있습니다. let prop = 'name'; let id = '123'; let mobile = '001'; let us.. 2018. 10. 28.
[JavaScript]반복문 for in vs for of forEach 반복문 forEach 반복문은 Array 객체에서 사용이 가능한 메서드입니다. 배열의 요소들을 반복하여 작업을 수행할 수 있습니다. forEach 구문의 parameter로 callback 함수를 등록할 수 있고, 배열의 각 요소들이 반복될 때 이 callback 함수가 호출됩니다. const arr = ['element1', 'element2', 'element3']; arr.forEach(el => console.log(el)); /* result = element1, element2, element3 */ for ...in 반복문 for in 반복문은 객체의 속성들을 반복해서 작업을 수행할 수 있습니다. 모든 객체에서 사용이 가능합니다. for in 구문은 특히 객체의 key 값에 접.. 2018. 10. 28.