JavaScript/JavaScript

JavaScript/JavaScript

[JavaScript] Object key and value loop Object.entries()

🙄서론 파이썬 문법에 key와 value를 한 번에 가져와서 for문을 돌리는 걸 보고 js에도 있나 찾아보게 되었다. 🤗본론 파이썬 문법 stations = {} stations['kone'] = ['id', 'nv', 'ut'] stations['ktwo'] = ['wa', 'id', 'mt'] for key, value in stations.items(): print(key) print(value) 딕셔너리를 key, value 모두 가져와서 사용할 수 있다. 자바스크립트 문법 const object1 = { a: 'somestring', b: 42 }; for (const [key, value] of Object.entries(object1)) { console.log(`${key}: ${valu..

JavaScript/JavaScript

[Java]기본형과 참조형 두 종류의 타입

기본형(primitive type) 타입 메모리 크기 기본 값 데이터의 표현 범위 논리형 boolean 1 byte false true, false 정수형 byte 1 byte 0 -128 ~127 short 2 byte 0 -32,768 ~32,767 int 4 byte 0 -2,147,483,648 ~ 2,147,483,647 long 8 byte 0 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 실수형 float 4 byte 0.0F (3.4 X 10-38) ~ (3.4 X 1038) 의 근사값 double 8 byte 0.0 (1.7 X 10-308) ~ (1.7 X 10308) 의 근사값 문자형 char 2 byte '\u0000' 0 ~ 65..

JavaScript/JavaScript

[JavaScript]두 배열 안에 오브젝트를 비교 후 중복된 값 제거

서론 --- 몇 시간동안 고민 후 일단 짠 다음 과장님께 코드리뷰를 부탁드려서 결국 사내 라이브러리를 통해 내가 짠 코드보다 몇 배는 간결하게(거의 2~3줄로 끝낸..) 끝을 내는 방법을 찾아 해결을 하긴 했다. 하지만, 회사 라이브러리 없이 어떻게 짜는 방법이 간결한지 궁금해서 기록 느낌으로 일단 짠 코드를 올려서 나중에 다시 이런 일이 있었을 때 보고 예전엔 저렇게 짰었구나 생각하기 위한 글. 본론 --- 오브젝트로 구성된 배열이 A, B가 있다. 오브젝트 안에 있는 name, address 두 가지를 같이 비교를 하여, B와 같은 name, address가 A에 있는지 확인하여 A에 있다면 A에서 그 오브젝트를 제거하는 로직 내가 생각한 방식은 새로 배열을 만들어서 일단 무조건 넣고, 중복된 걸 찾..

JavaScript/JavaScript

[일기]async await 비동기 방식 처리

http://kdhyo.kr Mapstival Best Travel with a map Start kdhyo.kr 첫 프로젝트로 축제사이트를 만들었을 당시 nodejs와 자바스크립트에 대한 어떻게 만지는지에 대해서만 배운 후 바로 만들었던 작품이었다. 그 당시에 축제 API를 불러오는 과정에서 비동기방식으로 처리를 해야된다는 이야기를 듣고, 어떻게 불러오고, 어떻게 비동기 방식으로 처리해야되는지 감이 안오는 상태에서 이것저것 검색을 해보았을 때 promise와 axios 그리고 async await에 대한 단어들을 알게 되었고 그것들을 실제 적용을 하였다. 적용을 하고 보니 정상적으로 api들이 가져와진걸 보고 "아 비동기처리 했다!" 라고 생각을 했다. 그 당시엔 비동기 처리가 뭔지.. 우리 사이트에 ..

JavaScript/JavaScript

[JavaScript]프로트타입(Prototype) ??

프로트타입은 자바스크립트에서 어쩌면? 가장 핵심적인 내용이라고도 볼 수 있습니다. '함수는 객체다.' 라는 말을 들어보셨을 겁니다. function a(x, y) { return x - y; } a.add = "No add"; console.log(a.add); 이런 식으로 add를 추가시켜서 Key/Value 를 가질 수 있습니다. 추가를 시킬 수도 있지만 기존에 있던 것들도 사용할 수 있습니다. 평소에도 많이 보셨던 a.name, a.length 등 이렇게 사용할 수 있는게 바로 함수가 객체이고 자바스크립트가 프로트타입 방식이기 때문입니다. 예제와 이미지를 통해 설명을 하면 이해하기 더 쉽겠지만 이번 포스팅에선 간단하게 글로만 제가 이해한 것을 바탕으로 적어만 두고, 나중에 한번 수정할 예정입니다. ..

JavaScript/JavaScript

[JavaScript] var, let, const ?

ECMAScript2015에서 let과 const가 등장한 이후로 개발자들이 var 대신 let, const를 주로 활용하고 있습니다. 자바스크립트의 장점이자 어찌보면 단점이라고도 생각되는 유연성을 let과 const가 그 단점을 보안해주는 역할을 합니다. 이제 var와의 차이점을 하나씩 알아보겠습니다. var : function-scoped let, const : block-scoped var는 함수를 기준으로 스코프가 생성이 되며, let과 const는 블록을 기준으로 스코프가 생성됩니다. if(true){ var a = 2; } console.log(a) if(true){ let a = 2; } console.log(a) 위에 var로 선언한 a변수는 정상적으로 콘솔에 나타나는 반면, let으로 선..

JavaScript/JavaScript

[JavaScript] 클로저(closure) 정의

클로저(closure) 자바스크립트에서 클로저의 정의는 정확히 내려지지 않았습니다. 그래서 사람들마다 책마다 블로그마다 클로저의 정의를 말하는게 조금씩 다릅니다. 제가 공부하면서 생각한 정의는 이런 느낌입니다. '이미 생명주기가 끝난 함수의 변수를 참조할 수 있도록 해주는 현상' function outer () { let a = 0; function inner () { return ++a } return inner; } const func = outer(); console.log(func()); console.log(func()); console.log(func()); 위 코드를 실행하면 결과는 1 2 3 이 나오게 됩니다. 이걸 이해하려면 일단 '실행 컨텍스트'를 이해하셔야 합니다. func에서 out..

JavaScript/JavaScript

[JavaScript] 스코프(Scope)는 뭘까?

스코프는 우리 말로 번역을 하면 '범위'라는 뜻이다. 자바스크립트에서 스코프는 '접근할 수 있는 범위'라고 생각하면 된다. 아래 예제들을 보면서 이해하는게 가장 쉬울 거라 생각한다. const a = "Hello"; function b() { console.log(a); } b() 위처럼 b함수를 실행하게 되면 b함수에 a라는 변수가 없지만 전역에 있는 a라는 변수를 가져와 "Hello"를 출력 할 수 있게된다. 아래 코드는 어떨까? const a = "Hello"; function b() { console.log(a); const a = "bye"; } b() 여기서의 콘솔에는 어떤게 찍힐까? 바로 'undefined'가 출력되게 된다. 위 코드를 이해하지 못했다면 호이스팅 에 대한 포스팅을 읽고오는 ..

Hyo Kim
'JavaScript/JavaScript' 카테고리의 글 목록