문제 : 리눅스 환경에서 자바 어플리케이션 실행이 안됌

원인 : yml 저장시 들여쓰기 잘못적음

 

ex)

server:
    host: 127.0.0.1
    port: 3010

   path: v1/user

- getElementsByTagName 메소드는 값을 객체로 받아오기 때문에(HTMLCollection(3) [p, p, p])

- target.getAttribute -> X

- target[i].getAttribute -> O

<body>
    <div>
        <p data-topic-name="discussion">General discussion</p>
        <p data-topic-name="bugs">Bugs</p>
        <p data-topic-name="animals">Animals</p>
    </div>
</body>
<script>
    function newMessage() {
        let target = document.getElementsByTagName('p');
        console.log(target); // HTMLCollection(3) [p, p, p]

        let success = target[0].getAttribute('data-topic-name');
        console.log(success); // discussion

        let error = target.getAttribute('data-topic-name');
        console.log(error); // Uncaught TypeError: target.getAttribute is not a function
    }
    newMessage();
</script>

- 파일 이름을 지을때 띄어쓰기 쓰지말자!!

- 틀린 예 -

- 올바른 예 -

- form 태그안에 input 태그에서 id와 함수명이 같은경우 오류가 발생한다.

// Uncaught TypeError: short is not a function at HTMLInputElement.onclick 

// html
    <form>
        <input type="button" id="short" value="short" onclick="short()">
    </form>
</body>

// javascript
    function short() {
    	console.log('hi');
    }

해결 방법

1. 클릭 이벤트 함수 호출시 window.short()로 작성

// html
    <form>
        <input type="button" id="short" value="short" onclick="window.short()">
    </form>
</body>

// javascript
    function short() {
    	console.log('hi');
    }

 

2. id와 함수 이름 다르게 작성하기

// html
    <form>
        <input type="button" id="short" value="short" onclick="shorts()">
    </form>
</body>

// javascript
    function shorts() {
    	console.log('hi');
    }

+ Recent posts