이런 간단한 점수판 만들기
일단 저 점수 부분만 span으로 걸어놓고 버튼 누를때마다 let i = 0 , i++해서 이걸 span의 innerHTML (textContent로도 가능)에 넣고
이런거까지는 쉽게 만들었는데 문제는 5점내기라고 했을 때 5점이 되면 누가 이기든지에 상관없이 버튼을 비활성화시키고 싶었음
처음에는 if (score === winningscore) 되면 버튼1.disabled = true 로 했었는데 이게 클릭을 해야 실행되는 이벤트리스너라 그런지 누르기 전에는 비활이 안됨...
그래서 그냥 야매로 5점되면 alert로 1이 이김 2가 이김 해놓고 다시 score = 0 해버렸는데
그러면 당연히 if (true)니까 1점씩 오르면서 텍스트도 바뀜. 그러다 winningscore에 다다르면 저렇게 true로 해버리면 아예 저 함수식 자체가 실행이 안되니까 자연스레 버튼을 눌러도 변하는게 없음.
-여기서 배운거 : addEventListener에서 함수가 실행이 안되버리면 눌러도 뭐 변하는게 없음(근데 당연한거임...)
대신 reset버튼을 따로 만들어야 된다는 단점이 있지만 내가 쓴 코드보다 반은 줄였으니 그게더 이득인듯
'JS' 카테고리의 다른 글
for in / for of (0) | 2022.11.16 |
---|---|
자바스크립트 동기 처리 / promise 문법 (0) | 2022.10.14 |
.includes랑 정규식(regular expression)으로 문자검사하기 (0) | 2022.10.11 |
Destructing 문법 (0) | 2022.10.05 |
get/set (0) | 2022.10.02 |