이유를 다음 작품 :자바 스크립트 비교 문자열 수
oldversion = "1.3.52";
newversion = "1.3.54";
if (newversion > oldversion) {
console.log('test');
}
하지만이되지 않습니다 :
if (1.3.54 > 1.3.52) {
console.log('test');
}
나는 그들이 실제 수는 없기 때문에 마지막 예제가 작동하지 않을 것이라는 점을 알고있다 . 하지만 지금까지 자바 스크립트가 숫자가있는 문자열을 만났을 때 어떤 일을하는지 알아 내려고 노력 중입니다.
이것은 내가 W3에서 찾을 것입니다 : 비교를 수행 할 때
번호와 문자열을 비교, 자바 스크립트는 숫자에 문자열을 변환합니다.
어떻게 문자열을 숫자로 변환하면 갑자기 Uncaught SyntaxError: Unexpected number
이 표시되지 않습니까?
'1.3.54' 이것은 숫자가 아니기 때문에 간단합니다. '1'은 숫자이거나 '1.3'은 숫자이지만 점을 더 추가하면 유효하지 않습니다. – vlaz
나는이 점을 이해하고 있음을 알리기 위해 내 게시물에 명시되어 있습니다. 그렇다고해서 다른 예제가 효과가있는 이유는 설명하지 않습니다. 그것이 내가 알아 내고 싶은 것입니다. –
그것은 단지 문자열 비교를하고 있습니다. 그래서 이것을 버전 검사에 사용하는 것은 잘못된 것입니다. – Keith