일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 일상
- underscores
- grpahQL
- 알고리즘
- underbar
- react
- 자바스크립트
- 클라이언트
- array
- 제일어려워
- JavaScript
- 공부
- 초보
- nqueens
- 엔퀸즈
- 해커톤
- method
- 포스기
- ftech
- 개발
- 코드스테이츠
- 리액트
- this
- JS
- 취업
- DOM
- 연습
- 코딩
- vscode
- Instantiation Patterns
- Today
- Total
목록Study JS for me (39)
analogcoding
문제. 인자로 받는 문자열의 값이 연속된 홀수일 경우 홀수와 홀수 사이에 '-'를 입력한 후 리턴. Ex) input : '454793' => output : '4547-9-3' 해결방안. 1. 문자열을 하나씩 분리해서 배열에 각 요소를 담음. 2. 값이 홀수인지 확인. 3. 연속된 문자열 또한 홀수일시 '-' 추가. 4. 다시 배열을 문자열로 합침. 먼저 문자열을 인자로 받는 함수를 만들어준다. var DashInsert = function(str){ } 문자열을 분리해서 배열로 만들고 for문과 if문으로 값이 홀수인지 확인. str = str.split('') for(let i = 0; i < str.length; i++){ if(Number(str[i])%2!==0 && Number(str[i+1..
Closure 란 외부함수의 변수에 접근할 수 있는 내부함수. scope chain으로 표현되기도 한다. 보통 함수를 return하여 사용하고 return 하는 내부함수를 closure함수라고 칭한다. Closure가 가지는 세가지 scope chain Closure 자신에 대한 접근. (Closure function 내에 정의된 변수) 외부함수의 변수에 대한 접근 전역 변수에 대한 접근 function outer(){ console.log("outer"); function inner(){ console.log("inner") } return inner; } outer() // outer; outer()() // outer; // inner; var what = outer(); what() // inne..
Scope 변수와 그 값이 어디서부터 어디까지 유효한지 판단하는 범위. scope는 변수 접근 규칙에 따른 유효범위를 의미한다. javascript에서 함수가 선언되는 동시에 자신만의 scope를 가진다. + var 와 let, const는 변수가 적용되는 범위가 다르다. var의 경우 function scope(함수범위) 를 가지고 let과 const의 경우에는 block scope(블록범위)를 가진다. 재할당 재선언 var 가능 가능 let 가능 불가능 const 불가능 불가능 Global scope (전역 스코프) 함수 외부에서 선언된 모든 변수는 전역 스코프이다. 전역 스코프를 대표하는 객체는 최상위 객체 window. 모든 전역변수는 window 객체와 연결된다. 코드 어디에서든 참조할 수 있다..
지난번에 이어 underscore 형식의 메소드를 작성해본다. _.uniq 말 뜻 그대로 유니크한, 중복되지 않는 것만 가려내서 리턴한다. // Ex) let arr = [1,1,2,2,3,4,3] => [1,2,3,4] _.uniq = function(array) { let result = []; for(let i = 0; i < array.length; i++){ if(!result.includes(array[i])){ // 빈 배열이 array[i]를 포함하고 있는지 없는지 확인하면서 집어넣음으로 중복을 제거. result.push(array[i]) } } return result; } _.contains 주어진 인자가 node 의 자손인지, 아닌지에 대해 Boolean 값으로 리턴한다. _.con..
앞에서 메소드가 어떤 기능을 하는지에 대해 앞에서 알아보았다. 이제 동작원리에 대해 알아보고 메소드 또한 내장된 하나의 함수이기에 _underscore 에 있는 것들을 직접 적어보며 복습해보려고 한다. 기존 메소드와 같은 기능을 수행하는 함수를 직접 작성해본다. underscore = 코딩을 도와주는 자바스크립트 라이브러리로 매우 작은 용량에 여러가지의 function을 제공. 언더스코어 함수중에는 ES5, ES6를 거쳐 내장함수로 이미 지원하는 함수들이 있다. * 주어진 객체나 배열을 collection 으로 , 실행할 callback함수를 iterator 라고 칭한다. _.each each 함수에 경우 주어진 collection이 배열/객체인지에 대해 각 요소에 대해 실행할 수 있어야한다. _.eac..
간단한 메소드들을 앞전에 다루고 내가 고전하고있는 남은 메소드들을 적어보면 every / some / find / findIndex / filter / forEach /map / reduce / sort * reduce 10 ; // (모든 원소가 통과한다) } arr1.every(greaterThanTen) = true Array.some() 배열 안의 어떠한 요소라도 주어진 함수를 통과하는지 테스트한다. 하나라도 통과하면 true 모든 요소가 통과하지 못하면 false 를 리턴한다. 빈배열의 경우 무조건 false를 반환한다. callback함수는 1번 element , 2번 index , 3번 array를 인자로 갖는다. let arr2 = [ 1 , 2 , 3 , 5 , 7 , 9 ] functi..
알고리즘을 풀거나 코드를 작성할 때 아직 if 와 for에 더 익숙한 탓인지 특정 메소드를 정말 필요로 하는 상황이 아니면 filter , map , reduce 등의 메소드를 잘 사용하지 못하는 편인 것 같다. 메소드가 어떻게 동작하는 것인지 정확히 파악한다면 내가 코드를 작성할 때 조금 더 영리하게 사용할 수 있을까하는 맘에 복습 겸 메소드를 정리하기! let arr1 = [ 1 , 2 , 3 ] ; let arr2 = [ 4 , 5 , 6 ] ; Array.concat() 인자로 주어진 배열이나 값을 기존 배열에 합쳐서 새 배열을 반환한다. arr1.concat(arr2) = [ 1 , 2 , 3 , 4 , 5 , 6 ] ; Array.fill() 시작 인덱스부터(2번 인자/생략하면 처음부터) 끝 ..