Javascript/개념

splice() Array.prototype.splice() push, pop, unshift, shift 메서드는 모두 원본 배열을 직접 변경하는 메서드이며 원본 배열의 처음이나 마지막에 요소를 추가하거나 제거한다. splice도 역시 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 원본 배열의 내용을 변경시킨다. 반환값은 제거한 요소를 담은 배열이다. 아무 값도 제거하지 않으면 빈 배열을 반환한다. array.splice( start, deleteCount, items) splice 메서드는 3개의 매개변수가 있다. start : 원본 배열의 요소를 제거하기 시작할 인덱스이다. start만 지정하면 원본 배열의 start부터 모든 요소를 제거한다. start가 음수인 경우 배열의 끝에서의..
1. concat() Array.prototype.concat() concat() 메서드는 인자로 주어진 배열이나 값들을 기존 배열에 합쳐서 새 배열을 반환합니다. - 기존 배열을 변경하지 않는다. - 추가된 새로운 배열을 반환한다. const array1 = ['a', 'b', 'c']; const array2 = ['d', 'e', 'f']; const array3 = array1.concat(array2); console.log(array3); // expected output: Array ["a", "b", "c", "d", "e", "f"] //이렇게 아무것도 입력하지 않을시 기존배열의 얕은 복사본을 반환한다. const array4 = array1.concat() console.log(arr..
for 문 for 반목문은 어떤 특정한 조건이 거짓으로 판별될 때까지 반복합니다. for ([초기문]; [조건문]; [증감문]) 문장 실행 순서 1. 초기문 2. 조건문 3. 문장 4. 증감문 1) 초기화 구문인 초기문이 존재한다면 초기문이 실행됩니다. 2) 조건문은 조건을 검사합니다. (1). 조건문이 참이면 반복문이 실행 (2). 조건문이 거짓이면 그 for문은 종결됩니다. (3). 조건문이 생략된다면, 그 조건문은 참으로 추정됩니다. 즉 계속 for문이 돌아감 3) 문장이 실행됩니다. 문장이 여러개일때는 { } 를 써서 문장들을 묶어 줍니다. 4) 갱신 구문인 증감문이 존재한다면 실행되고 다시 조건문 단계로 넘어갑니다. 순서를 다시 정리하자면 이렇게 계속 반복하는 것이다. 그런데 여기서 생각해야할 ..
1. 함수란? 함수는 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것이다. 매개 변수 (parameter) : 함수 내부로 입력을 전달받는 변수 인수 (argument) : 함수를 호출할때 괄호 안에 넣는 입력 반환값 (return value) : 출력 함수 정의 : 함수를 생성하는 것 함수 호출 : 인수를 매개변수를 통해 함수에 전달하면서 함수의 실행을 명시적으로 지시하는 것 함수를 호출하면 코드 블록에 담긴 문들이 일괄적으로 실행되고 실행 결과 , 즉 반환값을 반환한다 그런데 왜 함수를 사용하는 것인가 ??? 여러가지 이유가있다. 먼저 여러번 반복 작업해야하는 수고스러움을 덜어주고 그로인한 유지보수의 편의섭을 높이고 반복으로 인한 실수를 죽여 코드의 신뢰성을 높여 주..
Date 객체는 1970년 1월 1일 UTC(협정 세계시) 자정과의 시간 차이를 밀리초로 나타내는 정수 값을 담습니다. 사용 방법 Date() 함수로 호출한 경우 new Date().toString()과 동일하게 현재 날짜와 시간을 나타내는 문자열을 반환합니다. console.log(Date()) //Wed Jul 27 2022 02:40:15 GMT+0900 (Eastern Indonesia Time) new Date() 생성자로 호출할 경우 새로운 Date 객체를 반환합니다. const date = new Date() console.log(date) // 2022-07-26T17:42:36.395Z 정적 메서드 Date.now() 1970년 1월 1일 00:00 UTC로부터 지난 시간을 밀리초 단위의..
function monthClassify(month){ if(month == 1 || 3 || 5 || 7 || 8 || 10 || 12){ console.log(`${month}월의 날 수는 31`) }else if(month == 4 || 6 || 9 || 11){ console.log(`${month}월의 날 수는 30`) }else if(month == 2){ console.log(`${month}월의 날 수는 28 또는 29`) } } monthClassify(2); 이렇게 했을 때 뭐가 출력될 것 같은지 예상해봅시다. "혹시 2월의 날 수는 28 또는 29"를 예상하고 이렇게 만드셨다면 틀리셨습니다. 함수 인수에다 어떤 숫자를 넣어도 "2월의 날 수는 31" 이 출력이 됩니다. 왜그런 것인가 ..
우리는 자바스크립트를 쓰면서 보통은 10진수 단위로 처리를 합니다. 그렇다면 2진수를 처리하는 연산자는 없을까? 했는데 존재했습니다. 그것들이 무엇인지 알아보려고 합니다. 연산자 효과 & AND 연산 (둘 다 1이면 1, 아니면 0) | OR 연산 (둘 중 하나라도 1이면 1, 둘 다 0일때만 0) ^ XOR 연산 (둘 다 1이거나 0이면 0, 다르면 1) ~ NOT 연산 (비트 반전, 1은 0, 0은 1) 비트를 우측으로 시프트 >>> 비트를 우측으로 시프트하지만 좌측을 0으로 채우기 " & " ( AND 논리 연산자) 이것은 많이 익숙한 연산자입니다. 보통 우리가 10진법 연산을 할때 && 이렇게하면 and로 작동이 됩니다. 그런데 & 이렇게 하나만 사용하면 2진법 연산을 할때 사용을 하게 됩니다. ..
Date Date 객체는 시간의 한 점을 플랫폼에 종속되지 않는 형태로 나타냅니다. Date 객체는 1970년 1월 1일 UTC 자정과 시간 차이를 밀리초로 나타내는 정수 값을 담습니다. constrotor Date() 함수로 호출할 경우 new Date().toString()과 동일하게 현재 날짜와 시간을 나타내는 문자열을 반환합니다. function day(a,b){ return Date(2016, (a-1), b); } console.log(day(5,24))//Thu Jul 21 2022 17:12:50 GMT+0900 (Eastern Indonesia Time) new Date() 생성자로 호출할 경우 새로운 Date 객체를 반환합니다. function day(a,b){ return new Da..
웹 페이지는 어떻게 만들어질까? DOM을 이해하기 전에 웹 페이지가 어떻게 빌드 되는지부터 알아야 한다. 웹 브라우저가 원본 HTML 문서를 읽어들인 후, 스타일을 입히고 대화형 페이지로 만들어 뷰 포트에 표시하기까지의 과정을 "Cirtical Rendering Path"라고 합니다. Understanding the Critical Rendering Path 에서 다루듯이 이 과정은 여러 단계로 나누어져 있지만, 이 단계들을 대략 두 단계로 나눌 수 있습니다. 첫 번째 단계에서 브라우저는 읽어들인 문서를 파싱하여 최종적으로 어떤 내용을 페이지에 렌더링할지 결정합니다. 두 번째 단계에서 브라우저는 해당 렌더링을 수행합니다 첫 번째 과정을 거치면 “렌더 트리”가 생성됩니다. 렌더 트리는 웹 페이지에 표시될 ..
개발자성장기
'Javascript/개념' 카테고리의 글 목록 (2 Page)