본문 바로가기

JavaScript

(11)
JavaScript의 Array 관련 함수들 자바스크립트의 알고리즘 공부를 하다보면 Array 관련 메소드들을 활용이 비일비재하다. 가장 자주 사용되고 기본적으로 알고 있어야 할 prototype 함수들을 정리해보고자 한다. Array.from() console.log(Array.from('foo')); // expected output: Array ["f", "o", "o"] console.log(Array.from([1, 2, 3], x => x + x)); // expected output: Array [2, 4, 6] console.log(Array.from({ a: '1', b: '2' })); // [] : object는 빈 배열로 리턴된다. let obj = { a: '1', b: '2' }; Array.from(Object.keys(..
JavaScript를 위한 자료구조 학부 시절부터 지금까지, 자료구조와 알고리즘은 지루하기만 하고, 하기 싫은 숙제처럼 나를 괴롭혀왔다.. 하지만 현업에 들어오면서 "아 이 내용이 이런 식으로 활용되는구나" 몸소 깨달으면서 코드를 작성하는 일에 조금씩 재미를 느껴온 지 3년 차, 의구심이 들었다. 나는 과연 JavaScript의 기본적인 알고리즘 패턴을 제대로 이해하고 있는가? 실무에서 JavaScript를 다루면서 기본은 충실하게 이해하고 있는지 궁금해졌다. 그렇게 시작한 알고리즘 테스트 방법은 바로 "프로그래머스의 코딩 테스트 연습 문제" Level 순서대로 풀어보기! 기본적인 것도 익숙지 않은 문제 형태로 만나게 되면 머릿속이 백지처럼 바뀌는 마법...(그리고 몰려오는 현자 타임..) 따라서 이 글에서는 최근 알고리즘 공부를 하면서 ..
JavaScript Immutability 현업에 들어와 본격적으로 JavaScript를 접하게 되면서 항상 의문이 들었던 부분이 있었다. " var 선언문 하나로 number, Array 등 다양한 데이터 타입들을 다루면서 어떤 타이밍에 값을 유지하고 변화시켜야 하지? " 적은 양의 변수가 아닌 10000개, 또는 그 이상의 수많은 변수를 선언하는 경우 이를 제어하기는 쉽지 않을 것이다. JS Immutability는 특히 React와 같은 라이브러리 또는 redux, time travel과 같은 고급 기법을 구현하는데 기초가 되기도 한다. 참고로 JS Immutability가 React의 기초 지식 state를 이해하는 데 큰 도움이 된다. 필자는 react를 처음 접한 뒤 Immutability를 정리하면서 유레카를 외쳤다... JavaSc..