반응형

Javascript

delete 는 객체의 속성을 제거 할때 쓰는 연산자이다 -반환값은 제거에 성공하면 true 실페하면 false / stric 모드에서 속성이 자신의 속성이며 설정이 불가능할 경우 typeError -delete는 단순히 객체와 속성과의 연결을 끊을 뿐 실제로 메모리에서 제거하는것은 아니다. -delete 하고 싶은 delete 연산자를 사용하기보다 값을 null 이나 undefined로 설정하는것을 추천한다. var array = [0, 1, 2, 3] delete array[2] true array // (4) [0, 1, empty, 3] (배열도 객체의 일종이기에 객체 및 배열에서 속성을 제거할때 사용가능) - delete 연산을 하여도 배열의 크기는 그대로 유지 된다. 따라서 delete 연산은..
Array.prototype.filter filter 메서드는 자신의 호출한 배열의 모든 요소를 순회하면서 인수로 전달받은 콜백 함수를 반복 호출한다. 그리고 콜백 함수의 반환값이 true인 요소로만 구성된 새로운 배열을 반환한다. 이때 원본 배열은 변경되지 않는다. const numbers = [1, 2, 3, 4, 5]; //filter 메서드는 numbers 배열의 모든 요소를 순회하면서 콜백 함수를 반복 호출한다. // 그리고 콜백 함수의 반환값이 true인 요소로만 구성된 새로운 배열을 반환한다. // 다음의 경우 numbers 배열에서 홀수인 요소만 필터링한다 (1은 true로 평가된다). const odds = numbers.filter(item => item % 2); console.log..
이전에 우리가 알고있는 자료구조는 객체 - 키가 있는 컬렉션을 저장함 배열 - 순서가 있는 렉션을 저장함 였지만 현실세계를 반영하기에는 이 두 자료구조 만으론 부족해서 Map Object가 만들어졌다. 맵 객체 메소드 맵 객체는 기존 객체와는 다르게 메소드만을 이용해 값을 넣고 뺀다. 기본적으로 추가, 조회, 삭제를 할 수 있는 메소드들은 아래와 같다 //변수명 자유롭게 설정 가능 let map = new Map(); // set으로 맵 객체에 추가 map.set("id", 0); map.set("이름", "마이클"); map.set("전공", "영문학"); map.set("나이", 25); // 이런식으로 정의할때부터 바로 넘겨줄 수 도 있음 let michael = new Map([ ["id", 0]..
the "Cannot read property '0' of undefined" error occurs when trying to access the index '0' on a variable that stores an 'undefined' value. 이것을 해결하기 위해서는 array 이나 string 같은 인덱스 엑세스를 지원하는 값에만 엑세스해야한다. 예제 const arr = undefined; // ⛔️ Cannot read properties of undefined (reading '0') console.log(arr[0]); const str = undefined; // ⛔️ Cannot read properties of undefined (reading '0') console.log(str..
 Array.prototype.reduce() 주의 : reduce는 원본배열을 변환시키지 않는다. reduce 메서드는 자신을 호출한 배열을 모든 요소를 순회하며 인수로 전달받은 콜백 함수를 반복 호출한다. 그리고 콜백 함수의 반환값을 다음 순회 시에 콜백 함수의 첫 번째 인수로 전달하면서 콜백 함수를 호출하여 하나의 결과값을 만들어 반환한다. 이때 원본 배열은 변경되지 않는다 reduce 메서드는 자신을 호출한 배열의 모든 요소를 순회하며 하나의 결과값을 구해야 하는 경우에 사용한다. const sum = [1, 2, 3, 4].reduce((accumulator, currentValue, index, array) => accumulator + currentValue, 0) console.log(s..
배열 배열에서 ...을 사용하면 배열이 개별원소가 된다. const array = [1, 2, 3] console.log(...array) // 1 2 3 console.log([...array]) // [ 1, 2, 3 ] console.log(array) // [1, 2, 3] const array1 = [1, 2] const array2 = [5, 6] const array3 = [...array1, 3, 4, ...array2] console.log(array3) // [ 1, 2, 3, 4, 5, 6] 이런식으로 출력이 된다. 그리고 ...을 사용해도 원본은 그대로 유지가 된다. 객체 객체에서 사용할때는 나머지를 의미한다. const obj = { a : 1, b : 2, c : 3, d : 4..
Argument of type '({ customCategory }: SForm) => void' is not assignable to parameter of type 'SubmitHandler'. Types of parameters '__0' and 'data' are incompatible. Property 'customCategory' is missing in type '{ [x: string]: any; }' but required in type 'SForm'. 이런 오류가 떴다. 즉 타입이 제대로 적용이 되지 않은 것이다. 이런식으로 코드를 만들어줬는데. handleSubmit 을 useForm에서 가져오는 과정에서 타입지정을 안해주고 가져와서 생긴 오류이다. 이렇게 해주면 끝!
개념 정규 표현식은 일정한 패턴을 가진 문자열의 집합을 표현하기 위해 사용하는 형식 언어다. 정규 표현식은 자바스크립트의 고유 문법이 아니며, 대부분의 프로그래밍 언어와 코드 에이터에 내장되어 있다. 정규 표현식은 문자열을 대상으로 패턴 매칭 기능을 제공한다. (패턴 매칭 기능이란 특정 패턴과 일치하는 문자열을 검색하거나 추출 또는 치환할 수 있는 기능을 말한다.) 장점 반복문과 조건문 없이 패턴을 정의하고 테스트하는 것으로 간단히 체크 단점 주석이나 공백을 허용하지 않고 여러 가지 기호를 혼영하여 사용하기 때문에 가독성이 좋지 않다 사용방법 RegExp 메서드 1) regExp.prototype.exec exec() 매서드는 주어진 문자열에서 일치 탐색을 수행한 결과를 배열 혹은 null로 반환한다. ..
개발자성장기
'Javascript' 카테고리의 글 목록 (4 Page)