빨간색 코드 없이 사용도 가능한가봐요....? 채택완료
비타주리 님 코드 (https://sir.kr/g5_tip/17541) 보니까
아이디 경우엔 빨간색 라인 없이 사용도 가능하던데, JS 표준 방식 중 하나인가요?
답변 1개
예. 가능합니다.
그 이유는 클래스나 네임과는 다르게 아이디는 그 문서에서 하나 밖에 없기 때문에 그냥 맨몸뚱아리 호출이 가능합니다.
이게 표준인가 비표준인가의 문제는
우리가 변수를 선언할 때 그 타입이 Number 인지 String 인지 선언해야 표준이라고 주장하는 사람이 있는가 하면
자바스크립트는 그걸 선언하지 않아도 알아서 능동적으로 읽기 때문에 굳이 선언해 줄 필요가 없다고 주장하는 사람의 문제와 같다고 봅니다.
물론 예외도 있어요.
XMLHttpRequest 로 문서를 로드할 때 그 문서에서는 숫자로 주었는데도 로드하고 나면 문자가 되어버려서 다시 Number 형 치환을 해 주어야 할 경우도 생기거든요.
어쨌거나 이를테면 div 가 10개가 있고 그 div 의 아이디를 my1 부터 my10까지 주었다면
for (i=1; i<=10;i++) {
this["my"+i].style.display = "none";
}
이리되면 div 10개가 다 안 보이게 됩니다.
마치 클래스를 배열처럼 불러 쓰듯이요.
글쎄요. 저는 웹코딩을 시작한 이후 초창기 짧은 시기를 제외하고는 모두 아이디를 저렇게 써 왔습니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
w3schools 예제 중에도 저런 코드가 보이는 걸로 봐선 표준이라 봐도 된 듯 합니다.
덕분에 좋은 팁 하나 배웠네요.
( ^ ________ ~) ===b
PS.
제가 7월에도 질문했던 거더라구요. 어쩐지 데자뷰 같더라니...ㅎ
https://sir.kr/qa/423958