JS의 객체를 저장하는 변수는 객체의 주소를 참조한다. Object.assign({}, target) 명령어는 새로운 객체를 만들고 원본 객체의 열거 가능한 속성을 복사한다. spread 연산자 ...도 마찬가지! const origin = { id: 0, name: 'injuk', age: '1', }; // 참조를 복사하므로 두 객체는 같다. const obj1 = origin; check(obj1); // 새로운 빈 객체를 만들고 원본의 속성을 복사하므로 두 객체는 다르다. const obj2 = Object.assign({}, origin); check(obj2); // 새로운 객체를 만들고, 원본 객체에 새로운 객체의 속성을 복사하므로 두 객체는 같다. const obj3 = Object.ass..
[변수] instanceof Function을 활용하여 체크한다. typeof [변수] === 'function'도 사용할 수 있다. 사용 예시 function callFunctions(init, ...functions) { return functions.reduce((acc, func) => { if(func instanceof Function) return func(acc); else throw new Error(`${func} is not Function`); }, init); } try { const result = callFunctions( 1, value => value *= 100, value => value += 2, // 3, value => value -= 22, console.log,..
Correct way to convert size in bytes to KB, MB, GB in JavaScript I got this code to covert size in bytes via PHP. Now I want to convert those sizes to human readable sizes using JavaScript. I tried to convert this code to JavaScript, which looks like this: fun... stackoverflow.com 리마인드용으로 작성
[BaekJoon] 2309 일곱난쟁이 (node.js) 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 ingnoh.tistory.com 요 문제를 보다가 기본적인 for문을 통해 배열을 순회하고 있는 것을 보고 의문이 들었다. 기본적인 for문과 forEach, for in문에서 가능한 것처럼 for of문에서도 배열 인덱스를 사용할 수 있지 않을까? 결론부터 말하자면 Array.prototype.keys()나 entries()를 활용하는 방법이 있었다. 이 글은 다음과 같은 사람에게 도움이 될 것으로 보인다. 기본적인 for 문의 문법이 너무 어려워 ..
Promise.allSettled() - JavaScript | MDN Promise.allSettled() 메서드는 주어진 모든 프로미스를 이행하거나 거부한 후, 각 프로미스에 대한 결과를 나타내는 객체 배열을 반환합니다. developer.mozilla.org // 1. const promises = [ // some promises... ]; // 2. const responses = await Promise.allSettled(promises); // 3. let results = []; for(const { status, value = undefined } of responses) { if(status === 'fulfilled') results.push(value); } Promise들을 포함..
const before = [1, 2, 3, 0, false, true, undefined, null, {}]; console.log(`before: ${before} and length is ${before.length}`); function removeFalsy(elements = []) { return elements.filter(elem => elem); } const after = removeFalsy(before); console.log(`after: ${after} and length is ${after.length}`); /* 실행 결과 before: 1,2,3,0,false,true,,,[object Object] and length is 9 after: 1,2,3,true,[object..
어쩌다가 오브젝트의 key를 모아둔 배열과 values를 모아둔 배열을 합쳐야한다고 할 때, 다음과 같이 해볼 수 있다. const keys = ['k1', 'k2']; const values = ['injuk', 'ingnoh']; const result = keys.reduce((acc, curr, idx) => { acc[curr] = values[idx]; return acc; }, new Object); console.log(result); /* 실행 결과 { k1: 'injuk', k2: 'ingnoh' } */ 또는 object에 [key]로 새로운 값을 추가할 수 있는 점을 이용하여 다음과 같이 사용해볼 수도 있다고 함. 요 방법은 링크에서 oneline으로 처리하는 내용을 볼 수 있다. ..
- Total
- Today
- Yesterday
- etc
- jQuery
- postgresql
- terraform
- Gradle
- Puppeteer
- Linux
- AWS IoT
- hashicorp
- Spring Cloud Config
- pgloader
- JPA
- javascript
- Vault
- Database
- shell
- Docker
- Git
- Node.js
- IntelliJ
- react
- RancherDesktop
- spring boot
- mysql
- JEST
- eureka
- kotlin
- AWS
- Java
- 코딩테스트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |