Language/Javascript
-
[Javascript] - Promise AllLanguage/Javascript 2022. 1. 28. 00:19
async/await Promise All Promise All 순서와 무관한 여러 개의 비동기 처리를 병렬로 처리하기 위해 사용하는 기능입니다. 예를 들면, 하나의 상품 키 값을 가지고 "상품을 조회하고, 그 상품에 대한 리뷰들을 조회" 하는 경우입니다. 덧셈, 뺄셈, 나눗셈 3 개의 비동기 처리를 하는 예제로 진행했습니다. Example 개별로 처리 const calcPlus = async (a, b) => { return a + b; } const calcMinus = async (a, b) => { return a - b; } const calcDivide = async (a, b) => { return a / b; } const promiseAllTest = async () => { const ..
-
[Javscript] map 과 forEach 의 차이점Language/Javascript 2022. 1. 19. 22:51
map 과 forEach 의 차이점 forEach 와 map 은 배열의 요소들을 함수에 넣고 실행하는 과정은 같지만, map 은 그 결과에 return 값이 있지만, forEach 는 return 을 보내지 않습니다. for 문을 통해서도 충분히 해결 가능하지만 이러한 map 이나 forEach 와 같은 선언적 프로그래밍 스타일은 표현력이 뛰어나고 작성하기 쉽고 훨씬 읽기 쉽습니다. 많은 이유로 좋지만 성능이 중요한 경우에는 그렇지 못합니다. for 문은 일반적으로 선언적 루프보다 3배 이상 빠르다고 합니다. 대부분의 응용 프로그램에서 큰 차이를 보이지는 않지만, 비디오 처리, 과학 계산 또는 게임 엔진에서 대량의 데이터 처리에서는 전체 성능에 큰 영향을 미칩니다. 위의 경우가 아니면 대부분은 단순한 선..
-
[Javascript] Class 와 ObjectLanguage/Javascript 2021. 10. 14. 15:20
Class 와 Object Class 연관 있는 데이터들이 fields 와 method 로 종합적으로 묶여있는 것 Data Class : fields 로만 이루어진 Class Class 는 데이터가 직접 들어가 있지는 않으며, 들어올 수 있는 데이터를 한 번만 선언한다. 붕어빵을 만드는 틀과 비슷하다고 생각하면 된다 Object Class 에서 실제로 데이터를 넣어 만들어진 것으로 Class 에서 새로운 instance 를 생성하면 Object 가 되는 것이다 Class 를 이용해서 여러 개의 Object 생성이 가능하다 Class 는 틀만 있는 것이기에 메모리에 올라가 있지 않지만, Object 는 데이터를 넣기 때문에 메모리에 올라가 있다 Class 가 붕어빵을 만드는 틀이라면 Object 는 틀로 ..
-
[Javascript] FunctionLanguage/Javascript 2021. 9. 28. 20:11
function function 은 기본적으로 input 을 받아서 잘 처리한 후 output(return) 을 한다 함수는 function Name, input, output 을 잘 작성하는게 중요하다 function declaration function name (params1, params2 ...) { body ... return; } 한 가지의 함수는 한 가지의 일만 수행하도록 하여야 한다 함수 명은 어떤 것을 수행하는 역할을 하므로, 동사형태 혹은 command 형식으로 지정하는 것이 좋다 :smile: Javascript 에서 function 은 Object 로 간주된다 따라서 변수에 할당이 가능하고 파라미터로 전달이 가능하며 함수를 return 할 수도 있는 것이다 Parameters 일반..
-
[Javscript] OperatorLanguage/Javascript 2021. 9. 28. 20:02
let 과 const let: 메모리에서 read, write가 가능하다(mutable) const: 메모리에서 read 만 가능하다. 즉, 변수에 값이 할당되면 변경 할 수 없다(immutable) 변수를 변경할 이유가 없다면 왠만하면 const 를 사용하자! const 의 장점 : 보안성이 좋다, 유지보수 시 사람의 실수를 줄일 수 있다. 메모리에 값이 저장되는 방법 primitive type: 일반 값이 저장되는 방법 object type: 객체가 저장되는 방법 operator increment : ' ++ ' 변수 = ++ 값: 값을 증가 후 변수에 할당 변수 = 값 ++: 값을 변수에 할당 후 증가let count = 2 const pre_increment = ++count con..
-
Javascript - Module(export, import)Language/Javascript 2021. 9. 26. 22:13
module 거대한 코드들이 작은 파일로 나눠질 수 있도록 한다. 모듈 덕분에 import, export 를 할 수 있게된다. Dynamic Module : 어플리케이션 로딩이 빨라진다. Named Exports 파일 혹은 모듈이 원하는 만큼 많은 수의 Named Exports 를 가질 수 있다. // math.js export const plus = (a, b) => a+b; export const minus = (a, b) => a-b; export const divide = (a, b) => a/b; // main.js import {plus} from "./math"; import 하고 싶은 함수의 이름을 중괄호({}) 안에 쓰면된다. 여기서 중요한 점은 반드시 export 된 이름과 import..
-
Javascript에서 use strict를 사용해야 하는 이유Language/Javascript 2021. 4. 23. 23:48
Javascript는 매우 유연한 언어로 개발 되었다. 유연하다는 것은 반대로 개발자가 실수를 해도 오류로 판단하지 못하고 넘어갈 수도 있기에 매우 위험하다는 뜻이다. 따라서 선언되지 않은 변수에 값을 할당한다던지 혹은 기존에 존재하던 프로토타입을 변경하는 등 비상식적인 행동들을 오류로 잡아내지 못한다. Javascript 사이트를 보면 strict mode에 대해 조금 더 자세하게 설명해주고 있다. developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Strict_mode Strict mode - JavaScript | MDN Strict mode 가끔 엄격하지 않은 기본값을 "느슨한 모드(sloppy mode)"라고 부르기도 합니다. 공식적인 용어는 아니지..