목록전체 글 (50)
에러 안나게 해주세요

var twoSum = function(nums, target) { for(let p1 = 0; p1 < nums.length; p1++){ let TargetNumber = target - nums[p1]; for(let p2 = p1+1; p2 < nums.length; p2++){ if(TargetNumber === nums[p2]){ return [p1,p2]; } } } return null; }; 브루트 포스 (완전탐색) 알고리즘. 전부 더해서 값을 찾아내었다. 이외의 올바르지 못한 테스트케이스 값에 대해서는 null 을 return 해주었다.

Scope 스코프란 식별자(변수)에 대한 유효범위입니다. 어떤 경계 A의 외부에서 선언한 변수는 A의 외부뿐 아니라 A의 내부에서도 접근이 가능하지만, A의 내부에서 선언한 변수는 오직 A의 내부에서만 접근할 수 있습니다. 이러한 스코프의 개념은 대부분의 언어에 존재합니다. 자바스크립트도 예외는 아닌데, ES5까지의 자바스크립트는 전역공간을 제외하면 오직 함수에 의해서만 스코프가 생성됩니다. *(ES6에서는 블록에 의해서도 스코프 경계가 발생하게 되었다. let,const,class,strict mode 등.../ 둘을 구분하기 위해서 함수 스코프, 블록 스코프라는 용어를 사용한다.) 함수 스코프 : 함수 내에서 변수를 선언했을 때, 우리는 함수 안에서만 이 변수에 접근할 수 있습니다. 우리가 함수 밖으..

environmentRecord environmentRecord에는 현재 컨텍스트와 관련된 코드의 식별자 정보들이 저장됩니다. 컨텍스트를 구성하는 함수에 지정된 매개변수 식별자, 선언한 함수가 있을 경우 그 함수 자체, var로 선언된 변수의 식별자 등이 식별자에 해당합니다. 컨텍스트 내부 전체를 처음부터 끝까지 쭉 훑어나가며 순서대로 수집합니다. (VariableEnvironment의 상태이므로 실행 전의 상태) 이 과정에서 코드가 실행되기 전임에도 불과하고 자바스크립트 엔진은 이미 해당 환경에 속한 코드의 변수명들을 모두 알게 됩니다. 그렇다면 엔진의 실제 동작 방식 대신에 '자바스크립트 엔진은 식별자들을 최상단으로 끌어 올려놓은 다음 실제 코드를 실행한다'라고 생각하더라도 코드를 해석하는 데는 문제..

실행 컨텍스트란? - 실행할 코드에 제공할 환경 정보들을 모아놓은 객체. (자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념) 자바스크립트는 어떤 실행 컨텍스트가 활성화 되는 시점에 선언된 변수를 위로 끌어올리고(호이스팅 hoisting), 외부 환경 정보를 구성하고, this값을 설정하는 등의 동작을 수행하는데, 이로인해 다른 언어에서는 발견할 수 없는 특이한 현상이 발생합니다. 동일한 환경에 있는 코드들을 실행할 때 필요한 환경 정보들을 모아 컨텍스트를 구성, 이를 콜 스택(call stack)에 쌓아 올렸다가, 가장 위에 쌓여있는 컨텍스트와 관련 있는 코드들을 실행하는 식으로 전체 코드의 환경과 순서를 보장합니다. 여기서 '동일한 환경', 즉 하나의 실행 컨텍스트를 구성할 수 있는..
1일차 아이템은 투두리스트보다는 뭔가 휙휙~ 바뀌는 걸 해보고 싶어서, 간단한 템플릿 조합처럼..? 2주내로 끝낼 생각. diplay : flex Layout 간단하게 잡음. react-redux, redux, reduxdevtool 적용완료. → login 및 save 파일 확인 용도로 사용할 예정. 아직 많이 서투름.. redux-thunk는 비동기처리를 위해 action에 펑션을 넣을 수 잇게 한다. 생각해야 할 것 → 부모 컴포넌트 및 자식 컴포넌트 데이터 관리. SidePanel : fontawsome 적용 "dependencies": { "@fortawesome/fontawesome-svg-core": "^1.2.34", "@fortawesome/free-solid-svg-icons": "^5..

영어 잘 못해서 파파고님의 도움을 받았다. 문제님이 등산을 하시는데, 계곡을 몇번 와리가리 치셨는지, 알아보는 문제 인 듯하다. 나는 그렇게 이해함. 1번 케이스 _/\ _ \ / \/\/ 2번 케이스 _ /\_ \ /\ / \/ \/ \/ UDDDUDUU / UP DOWN 형태로 String으로 input 값이 주어졌는데, Sales by Match와 다르게 10분도 고민 안했다. 내가 문법이 얼마나 빈약한지 다시금 깨달았다. 세상에~ function countingValleys(steps, path) { // Write your code here let point = 0; console.log(path); for(let i = 1; i < steps -2; i++){ if(path[i] === 'U'..

Array 문제인데, 자바스크립트 코드를 못짜서 못 푼 문제.. 나는 배열에서 같은 숫자를 찾으면 지울 때마다 Output을 올릴 생각을 했었는데, 30분 정도 헤매다가 결국 찾아보니, 객체 형태로 만들어서 key, value 포인트값으로 더해주는식으로 풀더라 접근의 방식이 아예 달랐음. function sockMerchant(n, ar) { let obj = {}; let point = 0; for(let num of ar) { obj[num] = obj[num] + 1 || 1; if(obj[num] % 2 === 0){ point += 1; } } return point; } for .. of 형태로 풀이 했는데, 역시 MDN에서 찾아봤다. 이 말고 다른 풀이도 찾아봤는데 forEach 형태로 풀어..

'use strict'; const fs = require('fs'); process.stdin.resume(); process.stdin.setEncoding('utf-8'); let inputString = ''; let currentLine = 0; process.stdin.on('data', inputStdin => { inputString += inputStdin; }); process.stdin.on('end', _ => { inputString = inputString.trim().split('\n').map(str => str.trim()); main(); }); function readLine() { return inputString[currentLine++]; } /* * Complet..