JavaScript에서 무한 루프 방지
다음 코드를 고려하십시오.
const mightBeZero = 0;
const maxIterations = 100 / mightBeZero;
console.log(`maxIterations: ${maxIterations}`);
for (let i = 0; i < maxIterations; i++) {
// do costly stuff like appending cloned DOM nodes
}
적어도 CodePen 은 사용자를 보호할 만큼 똑똑해 보이지만 ESLint는
++
대신 += 1
를 사용한 것 외에는 비판할 것이 없는 것 같습니다.무한 루프에도 불구하고 JavaScript에서 0으로 나누기가
Infinity
인 반면 다른 많은 프로그래밍 언어에서는 예외DivisionByZero
가 발생하는 이유는 무엇입니까?0으로 나누면 무한대가 되나요?
Miguel T Rivera ・ 2020년 9월 8일 ・ 2분 읽기
#javascript
#webdev
그리고 코드에서 handle JavaScript's division by zero properly에 실패한 이유는 무엇입니까?
실패 사슬
offsetWidth
요소의 너비가 0인지 확인하지 않고 width: auto
사용)x / 0 = Infinity
i++
를 i += 1
로 "고정"한 후 모든 것이 정상인 것 같습니까?!)솔루션 및 후속 문제
나쁘지는 않지만 to err is human과 같은 오류를 방지한다고 보장할 수 없으며 지능을 높이려면 힘이 필요합니다.
결의안
Reference
이 문제에 관하여(JavaScript에서 무한 루프 방지), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ingosteinke/prevent-endless-loops-in-javascript-4chi텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)