일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- wolfman to darkelf
- pyinstaller
- lob
- orge to troll
- 마크업 언어
- 결측치
- lob 7번
- lob 9번
- R언어
- lob 10번
- 써니나타스 1번
- 자료개방포털
- kostat
- ultra argv hunter
- 빅데이터
- 데이터형
- argc
- 범용레지스터 #레지스터 #어셈블리 #ASM #리버싱 #어셈블리어 #EAX #ESP
- 포너블
- 서니나타스
- 쉘코드
- argv
- troll to
- pythoncli
- mode함수
- 써니나타스
- pythonexe
- IS함수
- anxi0
- kosis
- Today
- Total
목록CODING/[JavaScript] Useful (3)
ANX1-Z3R0의 불안극복(不安克服)
우리는 보통 함수의 흐름이 return시엔 모든 게 끝나는 걸로 알고 있다.(사실은 그렇진 않고 실행이 끝난 후 GC가 메모리를 수거해가는 형태) 많은 언어들이 지역변수는 함수가 처리되는 동안에만 사용가능하도록 설계되어있다. function counter() { var count = 0; return function() { count++; console.log("Counter is ", count); } } var cnt = counter(); cnt(); cnt(); 하지만 이 코드는 수거됐을 법한 count의 값을 정상적으로 처리해서 출력해준다. (화려한 부활?) 그건 아니고 클로저 안에 정의된 함수는 만들어진 환경을 ‘기억한다’. 따라서 안에서 활성화된 변수를 자유 변수라고 하고, 함수와 함께 기억..
즉시실행함수이다. (function(a,b){console.log(a+b)})(1,2); 이렇게 생겼는데, 겁먹지 않아도 되는게 const fonction = function(a,b){ console.log(a+b) } fonction(1,2) //3 위의 표현을 줄인 것이라고 생각하면 쉽다. 보통 재사용할 일이 없는 동작을 코드를 더럽히지 않고 실행할때 요긴하게 사용된다. 그리고 IIFE 패턴으로 작성된 함수는 외부에서 접근할 수가 없다. (function init() { console.log("hi"); })(); //hi init(); // ReferenceError: init is not defined 위 코드는 hi가 한번 출력되고 오류가 발생하게 된다. 따라서 웹같은걸 짰을 때, debuggi..
매우 유용한 reduce함수로 다양한 사용성을 자랑해보겠다. reudce는 인자로 ((누산기,현재요소,현재요소의인덱스,호출된배열)=>{return 결과값},{초기값}) 총 4개를 넣고 2개를 받을 수 있는데, 누산기와 현재요소는 필수 요소로 기입하지 않으면 오류를 뱉는다. 초기값을 제공하지 않으면, 자동으로 배열 0번의 인덱스를 넣어준다. 따라서 다음과 같은 예제는 누산값을 제대로 출력한다. const sum = [1,2,3,4,5].reduce((accumulator,current)=>{ return accumulator+current }) console.log(sum) // 15 초기값을 제공하지 않고, 배열에 현재요소로 접근하여 reduce함수를 적용했을 때, 1로 자동 배치 되므로, 배열의 0번 ..