에러 || 디버깅 노트

에러 || 디버깅 노트

<script>태그에 src 속성으로 외부 JS 파일 불러온 다음에 JS파일에 있는 변수 출력이 안되는 이유

위 코드에서 externalVariable은 external.js 파일에서 정의되었으며, index.html 파일에서 src 속성을 사용하여 해당 파일을 불러왔습니다. index.html 파일 내부의 태그에서는 externalVariable을 사용할 수 없지만, var localVariable = externalVariable;와 같이 다시 정의하여 사용할 수 있습니다. 이후 console.log(localVariable);을 실행하면, "Hello, world!"가 출력됩니다.

에러 || 디버깅 노트

자바스크립트에서 자주 겪는 에러들

1. JavaScript 코드는 밑에 짜야한다. 자바스크립트는 html 조작하는 언어라고 했다. 근데 조작할 html이 위쪽에 있어야 조작이 잘 된다. 자바스크립트를 조작할 html 위에 작성하면 안된다. 왜냐하면 컴퓨터가 html 파일을 읽을 때 위에서 부터 한줄씩 차례대로 읽는데 미리 html을 읽어놔야 조작이 가능하기 때문이다. 2. 오타주의 Cannot read properties of null ~~~ 은 style 왼쪽에 작성된게 null이라 읽을 수 없다는 에러이다. ~~~ is not a function 은 함수명이 잘못되었다는 뜻이다. getElementById() 이것도 소괄호 붙는거 보니까 함수인데 여기에 오타났다는 뜻이다. 에러 메시지는 오타났다고 알려주는 고마운 메세지니까 이거 보고..

에러 || 디버깅 노트

커스텀 배열 메서드 만들기

remove라는 메서드를 만들었다. 배열 요소에서 지우고싶은 숫자를 인수로 넣으면 제거된 배열이 출력되는 메서드이다. 문제발생 : [1,3,3,3,5] 와 같이 연속된 숫자가 잘 제거가 안되는 버그가 발생했다. 하나하나 디버깅 해본결과 splice를 하면 배열 요소가 지워지면서 다음 조건에 만족하는 num의 인덱스까지 같이 바껴서 그런것이었다! 해결방법 : index라는 변수를 선언해 업데이트 되는 배열의 인덱스를 다시 재할당해주는 방식으로 해결했다. Array.prototype.remove = function (num) { for(let i = 0; i < this.length; i++) { let index = this.indexOf(num); if(this[index] === num) { this...

욱둥
'에러 || 디버깅 노트' 카테고리의 글 목록