일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- image resizing
- tenneling
- GoF 디자인패턴
- 디자인패턴
- 대규모 시스템 설계
- Live Template
- Logrus
- Golines
- 알림 시스템
- GoF
- goroutine
- gitops
- System Design
- Lambda@Edge
- AWS
- Infra
- 컴포지트패턴
- Bastion Server
- 시스템 설계
- Helm V3
- Kubernetes
- UnBuffered channel
- argocd
- 컴포짓패턴
- Buffered channel
- 클래스 관계
- notification system
- go
- golang
- AWS Infra
- Today
- Total
목록프로그래밍언어/Javascript & Typescript (43)
Fall in IT.
안녕하세요. 오늘은 자바스크립트에서 최대값과 최소값을 구하는 방법에 대해서 알아보도록 하겠습니다. 3개의 변수 중 최대값/최소값을 구하려고 할때간단하게 Math.max() 또는 Math.min() 함수를 사용하여 최대값과 최소값을 구할 수 있습니다.숫자 배열에서 최대값/최소값을 구하려고 할때for문을 돌면서 가장 큰수 또는 작은수를 비교하면서 구하는 방법 등 여러가지 방법이 있습니다.하지만, 배열의 길이가 길어질수록 퍼포먼스는 떨어지게 되고 불필요한 변수를 만들어야 하는 단점이 있습니다.Function.prototype.apply(), Array.reduce(), spread operator 를 사용하면 간단하게 해결할 수 있습니다. (spread operator의 경우 ES2015에서 추가된 기능으로 ..
안녕하세요. 오늘은 ES8 스펙인 Async/Await에 대해서 알아보도록 하겠습니다. 특히, 콜백 지옥을 벗어나게 해주는 Promise와 어떤 차이가 있고 Async/Await이 더 좋은 이유에 대해서 알아보겠습니다. Async / Await 이란?callback이나 promise와 같이 비동키 코드를 작성하는 새로운 방법입니다.Java와 같이 동기적으로 코딩할 수 있습니다. (동기적 코딩이란, 위에서 아래 흐름대로 순차적으로 진행된다는 말이다.) Promise를 이용한 비동기요청 처리 방법예를들어, 사용자 정보를 받아오는 getUsers() 메소드가 있다고 가정해보자.getUsers() 메소드는 promise 객체를 리턴하고, JSON 객체가 resolve된다.getUsers() 메소드를 사용하기 위..
1. for of - String을 순회할때 사용해도 좋다. "ASDF"를 for of로 돌릴 경우 "A", "B" ... 가 순회 된다. 2. startWith, endWith - 메소드를 사용하여 시작 문자열, 끝문자열을 매칭해볼 수 있다. 3. include - 메소드를 사용하여 문자열 포함 여부를 확인할 수 있다. - a = "dylee"; a.includes("dy"); // true 4. const - ES6에서는 const를 기본으로 사용하고, 변경이 필요한 변수에만 let을 사용하는 것을 추천한다. - const 변수는 immutable 하다. 하지만, 값에 대한 immutable은 아님! - 즉, Object, Array(사실 object임)의 경우 해당 값이 추가되거나 삭제되는 것은 가..
자바스크립트 기본 개념 알아보기2 1. 프로토타입- 모든 객체는 속성을 상속하는 프로토타입 객체에 연결돼 있습니다. 객체 리터럴로 생성되는 모든 객체는 자바스크립트의 표준 객체인 Object의 속성인 prototype 객체에 연결됩니다. 프로토타입 연결은 오로지 객체의 속성을 읽을 때만 사용합니다. 객체에 있는 특정 속성의 값을 읽으려고 하는데 해당 속성이 객체에 없는 경우 자바스크립트는 이 속성을 프로토타입 객체에서 찾으려고 합니다. 이러한 시도를 프로토타입 체이닝이라고 합니다. 가장 마지막에 있는 Object.prototype까지 계속해서 이어집니다. 만약 찾으려는 속성이 프로토타입 어디에도 존재하지 않는 경우 undefiend를 반환합니다. - 자바스크립트에서는 상속이라는 개념을 프로토타입을 이용하..
(진행중.. 알고리즘 문제를 풀면서 계속 추가할 예정입니다! :D) 알고리즘 문제 풀면서 새롭게 알게된 것들 javascript 1. match숫자, 문자 구분없이 사용 가능.사용사례. 2진수에서 1의 개수 구하기. match(+ 정규식)를 사용하여 간단하게 처리 가능. null 처리 주의 필요. 2. isNaN- 숫자를 체크할때 사용 (Not a Number)- isNaN("123") //false - 숫자로 변환되어 처리됨- isNaN(123) // false - 숫자이므로 false- isNaN("asdf") // true - 숫자가 아니므로 true 3. repeat특정 문자열을 특정 개수만큼 반복한 새문자열을 반환"*".repeat(3); // *** 4. split문자열을 특정 문자를 기준으로..
최근에 자바스크립트를 공부하고 있습니다. 생활코딩의 https://opentutorials.org/course/743 자바스크립트 강좌를 보며, 몇 가지 기본적인 내용들을 정리하였습니다. 간단한 예제소스와 함께 자바스크립트 기본 개념을 살펴보도록 하겠습니다. ==와 ===의 차이 ==는 데이터 형과 관계없이 값이 같다면 true를 return 합니다.===는 데이터 형도 같아야 true를 return 합니다. 조금 더 명확한 ===를 사용하는 것을 추천합니다.ex) 1 == '1' (true) / 1 === '1' (false) null == undefined (true) / null === undefined (false) 참조, https://dorey.github.io/JavaScript-Equali..
javascript에서는 함수를 선언하는 방법이 다양합니다. 함수 선언하는 방법에 대해서 간단히 알아보고, 언제 사용되는지 알아보도록 하겠습니다. 함수 선언 종류와 사용법일반적인 방법 function testFuction () { // logic } //실행 testFuction(); // "()"는 함수를 실행시키겠다는 약속된 문법입니다. 만약, testFunction; 이라고 했다면 변수로 인식할 것 입니다. 일반적인 방법2 var testFunction = function() { // logic } //실행 testFunction(); 익명함수: 이름이 없는 함수로, 즉시 실행이 필요할 경우 사용합니다. (function () { //logic })();
간단하게, javascript for문의 종류와 특징에 대해서 정리해보도록 하겠습니다. for문 알아보기기존 for문let array = [1,2,3,]; for(let i = 0; i < array.length; i++) {console.log("value: ", array[i]);} // output: value: 1, value: 2, value: 3 for .. in - 일반 Object의 문자열 키를 순회하기 위해 만들어진 문법입니다. - 배열의 속성들을 순회하기 위한 구문입니다. - 주의. 모든 열거 가능한 프로퍼티에 대해서 순회합니다. (즉, 배열 원소가 아닌 확장 속성도 순회합니다. length와 같은)for (let i in array) {console.log(i);} // output:..
안녕하세요.자바스크립트뿐만 아니라 모든 언어에서 시간 차이를 구하는 함수는 많이 사용됩니다.오늘은 자바스크립트에서 Moment.js를 사용하여 시간차이를 구하는 방법에 대해서 알아보도록 하겠습니다. Moment.js란?기존에 포스팅한 내용이기 때문에 생략합니다. ^^Moment.js 간단 설명 Moment.js를 사용하여 시간차이 구하기 (시간1: 과거시간, 시간2: 현재시간 임을 가정합니다.)Sample 1) - 시간 1, 시간 2 사이의 일(day) 차이 구하기 console.log('일 차이: ', moment.duration(t2.diff(t1)).asDays());Sample 2) - 시간 1, 시간 2 사이의 시간(hour) 차이 구하기 console.log('시간 차이: ', moment.d..
안녕하세요. 오늘은 PWA(Progressive Web App)에 대해서 알아보도록 하겠습니다. PWA는 재배포 하지 않아도 업데이트가 가능하고 즉시 수정이 가능해서 항상 최신상태를 유지할 수 있다는 말을 많이 들었습니다. 또한, 오프라인/온라인 모두 사용이 가능하다는 말에 PWA가 어떤 기술이길래 가능할까 의문이 들어 알아본 내용들을 정리합니다. PWA(Progressive Web App) 란?PWA는 웹의 장점과 앱의 장점을 결합한 환경입니다. 앱과 같이 설치가 필요 없고, 느린 네트워크에서도 빠르게 로드 됩니다. 관련된 푸시 알림을 전송할 수 있고 홈 화면에 아이콘을 만들 수 있으며, 앱과 같이 전체화면으로 로드할 수 있습니다. PWA의 특징프로그레시브 - 어떤 브라우저에서도 똑같이 동작합니다.반응..