빨간색 코드 없이 사용도 가능한가봐요....?

빨간색 코드 없이 사용도 가능한가봐요....?

QA

빨간색 코드 없이 사용도 가능한가봐요....?

본문

<audio id=audioPlayer src=https://blog.kakaocdn.net/dn/BHP32/btrcHD0bM3V/4jjMou5AV4PHq9N81H2tR1/tfile.mp3 controls></audio>

<script>
var audioPlayer = document.getElementById('audioPlayer');
window.addEventListener("DOMContentLoaded", function() { audioPlayer.play(); });
</script>


비타주리 님 코드 (https://sir.kr/g5_tip/17541) 보니까

아이디 경우엔 빨간색 라인 없이 사용도 가능하던데, JS 표준 방식 중 하나인가요?

이 질문에 댓글 쓰기 :

답변 1

예. 가능합니다.

그 이유는 클래스나 네임과는 다르게 아이디는 그 문서에서 하나 밖에 없기 때문에 그냥 맨몸뚱아리 호출이 가능합니다.

이게 표준인가 비표준인가의 문제는

우리가 변수를 선언할 때 그 타입이 Number 인지 String 인지 선언해야 표준이라고 주장하는 사람이 있는가 하면

자바스크립트는 그걸 선언하지 않아도 알아서 능동적으로 읽기 때문에 굳이 선언해 줄 필요가 없다고 주장하는 사람의 문제와 같다고 봅니다.

 

물론 예외도 있어요.

XMLHttpRequest 로 문서를 로드할 때 그 문서에서는 숫자로 주었는데도 로드하고 나면 문자가 되어버려서 다시 Number 형 치환을 해 주어야 할 경우도 생기거든요.

 

어쨌거나 이를테면 div 가 10개가 있고 그 div 의 아이디를 my1 부터 my10까지 주었다면

 

<script>

for (i=1; i<=10;i++) {

    this["my"+i].style.display = "none";

}

</script>

 

이리되면 div 10개가 다 안 보이게  됩니다.

마치 클래스를 배열처럼 불러 쓰듯이요.

 

글쎄요. 저는 웹코딩을 시작한 이후 초창기 짧은 시기를 제외하고는 모두 아이디를 저렇게 써 왔습니다.

아주 자세한 답변 감사합니다.
w3schools 예제 중에도 저런 코드가 보이는 걸로 봐선 표준이라 봐도 된 듯 합니다.
덕분에 좋은 팁 하나 배웠네요.
( ^ ________ ~) ===b

PS.
제가 7월에도 질문했던 거더라구요. 어쩐지 데자뷰 같더라니...ㅎ
https://sir.kr/qa/423958

답변을 작성하시기 전에 로그인 해주세요.
전체 2,655
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT