2
최근에 JavaScript (ECMAScript6)에서 var
을 사용하지 말라는 내용의 게시물을 보았습니다. 항상 const
또는 let
을 대신 사용하십시오. var
을 사용하는 YouTube API 문서의 다음 코드 스 니펫이 있습니다. JavaScript에서이 경우 var와 같지 않은 이유
function changeBorderColor(playerStatus) {
var color;
if (playerStatus == -1) {
color = "#37474F"; // unstarted = gray
} else if (playerStatus == 0) {
color = "#FFFF00"; // ended = yellow
} else if (playerStatus == 1) {
color = "#33691E"; // playing = green
} else if (playerStatus == 2) {
color = "#DD2C00"; // paused = red
} else if (playerStatus == 3) {
color = "#AA00FF"; // buffering = purple
} else if (playerStatus == 5) {
color = "#FF6DOO"; // video cued = orange
}
if (color) {
document.getElementById('existing-iframe-example').style.borderColor = color;
}
}
내가 let color
에 var color
을 변경
if (color)
) 근처 줄이 항상 true로 평가 것이라는 점을 시사한다. 그것은 "조건은 항상 사실입니다"입니다.
let
이 동작하는 이유를 이해하는 데 문제가 있으며
var
이 아닙니다.
시도'색 = 널 (null)을 할 수 있습니다.; ' – charlietfl
@charlietfl는 문제를 해결하지만 실제로 var와 let이 왜 다른지에 대한 나의 질문은 아닙니다. – Pete
나는 린터가 정직하지 못한 것 같아 – charlietfl