목록JavaScript (14)
차차로그
화살표함수는 ES6에서 제공하는 함수표현식이다. 기존의 함수표현식보다 간결하고 단순하게 작성할 수 있다. //기존 함수표현식 let sum = function(a, b) { return a + b; }; //화살표 함수 let sum = (a, b) => a + b; 위의 코드를 화살표 함수를 이용해 아래 코드처럼 작성할 수 있다. // 매개변수 지정 방법 () => { ... } // 매개변수가 없을 경우 x => { ... } // 매개변수가 한 개인 경우, 소괄호를 생략할 수 있다. (x, y) => { ... } // 매개변수가 여러 개인 경우, 소괄호를 생략할 수 없다. // 함수 몸체 지정 방법 x => { return x * x } // single line block x => x * x /..
concat() const arr1 = [1,2,3]; const arr2 = [4,5,6]; const arr3 = [7,8,9]; console.log(arr1.concat(arr2)); //[1, 2, 3, 4, 5, 6] console.log(arr1.concat(arr2,arr3)); //[1, 2, 3, 4, 5, 6, 7, 8, 9] console.log(arr1) //[1, 2, 3] 두 개 이상의 배열을 합쳐 하나의 배열을 리턴한다. 주의 원래 배열에 합쳐지는 것이 아닌 단순히 리턴을 하는 것! (arr1에 concat()을 해도 arr1을 찍으면 원래 배열 그대로임) const arr1 = [1,2,3]; const arr2 = [4,5,6]; const arr3 = [7,8,9]; c..
unshift() 배열의 맨 앞에 값을 추가하고, 값이 추가된 배열의 길이를 리턴한다. const arr = ['apple', 'banana']; const length = arr.unshift('zero'); console.log(length, arr); // 3, ["zero", "apple", "banana"] shift() 배열의 가장 첫 요소를 삭제하고 그 값을 리턴한다. const arr = ['apple', 'banana', 'cheese']; const element = arr.shift(); console.log(element, arr); // "apple", ["banana", "cheese"] push() 배열의 맨 뒤에 값을 추가하고, 값이 추가된 배열의 길이를 리턴한다. const..
//gfndayAdd(간격, 숫자, 날짜) var gfndayAdd = function(interval, num, day) { let year; let month; let date; let type = typeof(day); //대소문자 구분없이 받기 위해 toLowerCase() 실행 interval = interval.toLowerCase(); if(type == 'string'){ year = Number(day.substr(0, 4)); month = Number(day.substr(5, 2) - 1); date = Number(day.substr(9, 2)); day = new Date(year, month, date); }else if(type == 'object'){ year = day.ge..
null과 undefined의 공통점 둘다 각각의 타입명의 값이 유일하다. null 타입의 값은 null, undefined 타입의 값은 undefined 뿐 null 프로그래밍에서 null은 변수에 값이 없다는 것을 의도적으로 명시할 때 사용한다. 변수에 null을 할당하는 것은 변수가 이전에 참조하던 값을 더이상 참조하지 않는다는 뜻 // foo 변수에 'variable' 값을 더이상 참조하지 않을 것을 의미한다. let foo = 'variable'; foo = null; // null의 타입을 확인하면 객체Object를 반환한다. var nullType = null; console.log(typeof nullType); // Object // null은 NaN? false 반환 console.lo..
자바스크립트의 엔진(대표적으로 크롬의 V8엔진)은 자바스크립트 코드를 동기적으로 실행한다. js엔진은 싱글 스레드(실행의 단위)의 하나인 call stack을 갖고 있다. 5개의 js코드가 있다면 그것은 call stack에 쌓이게 된다. 동기적으로 실행되기 때문에 첫 번째 코드가 실행되고 종료되기까지 두 번째 코드는 실행되지 않는다. 첫 번째 코드 실행-첫 번째 코드 종료-두 번째 코드 실행-두 번째 코드 종료-...(반복) 자바스크립트의 엔진은 후입선출(LIFO)방식을 사용해 코드를 진행한다. 따라서 제일 늦게 들어온 순서대로 코드를 실행한다. const funcOne =() => { 2️⃣console.log("No.1") 3️⃣funcTwo() } const funcTwo =() => { 4️⃣c..