목록웹 개발/JavaScript (4)
EnJinnier

새로 맡은 프로젝트 api연결을 시작해서 열심히 연결하는데.. 난관에 봉착했다.문제는 get API를 연결하는데 data를 불러와서 console.log(data)까지 다 잘찍히는걸 확인했는데(연결은 잘 됐다는 의미){`${data.projectNum}개`} 이런식으로 사용하면 UI에는 undefined가 뜨더라..Undefined가 나오는 이유는 다음과 같다.1. 값이 할당되기 전에 페이지가 로드됨(=아직 존재하지 않는 경우) (isLoading을 사용해야 하는 이유)2. 객체에 없는 프로퍼티에 접근한 경우3. 변수에 값을 초기화하지 않는 경우(null과는 명백히 다름. undefined는 정의되기 전의 일종의 상태 같은 값, null은 빈 값이라는 명확한 의미를 가짐) 그리고.. 약 3시간 넘게 챗지..
arr.splice(n,m) : n부터 m개의 특정 요소를 지움 arr.splice(n,m,x) : n부터 m개를 지우고 그자리에 x 추가 arr.splice() : 삭제된 요소 반환 arr.slice(n,m) : 인덱스 n부터 m(포함x)까지 반환 arr.concat(arr2,arr3..) : 합쳐서 새배열 반환 arr.forEach(item,index) : 배열 반복 arr.indexOf(word)/arr.lastIndexOf(word) : 배열에서 word를 탐색하고 발견하면 해당 인덱스를 반환(발견하지 못하면 -1) arr.includes() : 포함하는지 확인(인덱스 반환없이 true,false 반환) arr.find(fn) : 조건을 만족하는 요소 찾기 arr.reverse() : 역순으로 재..
toString() :문자열로 바꿔주기 :문자열로 바꿔주는 메소드. + 10진수를 2진수나 16진수로 만들어줄 수도 있다. let num = 10; //문자열로 바꾸기 num.toString(); //"10" //2진수로 바꾸기 num.toString(2); //"1010" //16진수로 바꾸기 let num2=255; num2.toString(16); //"ff" parseInt() : 문자열을 숫자로 2진수, 16진수로도 변경 가능 let margin = '10px'; let redColor='f3'; parseInt(margin); //10 parseInt(redColor); //NaN parseFloat() : 문자열을 소수로 let padding = '18.5%'; parseFloat(paddi..
Object.assign(): 객체 복제 user라는 객체를 const newUser = user; 로 할당해버리면 newUser는 user의 참조값 자체를 복사해버리면서 newUser의 내용을 수정했을때 user의 내용까지 수정되는 경우가 발생해버린다. 이때 newUser에 user객체의 내용만 복사해 넣고 싶으면 const newUser = Object.assign({},user); 라는 코드를 사용하면 된다. {}안의 내용에 뒤에 참조한 객체의 내용이 추가된다. 만약 병합시 동일한 키가 존재한다면 복사할 개체값의 내용이 기존의 내용을 덮어쓰게 된다. 두 개 이상의 객체도 합쳐줄 수 있다. const newUser = Object.assign({},user1,user2); Object.keys() :..