다음과 같은 간단한 html 블록이 있습니다.
<span id="replies">8</span>
jquery를 사용하여 값 (8)에 1을 추가하려고합니다.
var currentValue = $("#replies").text();
var newValue = currentValue + 1;
$("replies").text(newValue);
무슨 일이 일어나고 있는지는 다음과 같이 나타납니다.
81
그때
811
9가 아니라 정답입니다. 내가 뭘 잘못하고 있죠?
답변
parseInt ()는 정수 유형이되도록 강제하거나 변환을 수행 할 수없는 경우 NaN (숫자가 아님)이됩니다.
var currentValue = parseInt($("#replies").text(),10);
두 번째 매개 변수 (기수)는 십진수로 구문 분석되도록합니다.
답변
Parse int는 여기서 사용해야하는 도구이지만 다른 도구와 마찬가지로 올바르게 사용해야합니다. parseInt를 사용할 때 항상 기수 매개 변수를 사용하여 올바른 기준이 사용되는지 확인해야합니다.
var currentValue = parseInt($("#replies").text(),10);
답변
정수는 그 반대가 아닌 문자열로 변환됩니다. 원하는 :
var newValue = parseInt(currentValue) + 1
답변
parseInt는 IE에서 나를 위해 작동하지 않았습니다. 그래서 저는 단순히 원하는 변수에 +를 정수로 사용했습니다.
var currentValue = $("#replies").text();
var newValue = +currentValue + 1;
$("replies").text(newValue);
답변
.js의 8 진수 오해와 관련하여-방금 사용했습니다 …
parseInt(parseFloat(nv))
선행 0으로 테스트 한 후 매번 올바른 표현으로 돌아 왔습니다.
도움이 되었기를 바랍니다.
답변
코드는 다음과 같아야합니다.
<span id="replies">8</span>
var currentValue = $("#replies").text();
var newValue = parseInt(parseFloat(currentValue)) + 1;
$("replies").text(newValue);
답변
1 씩 증가하려면 다음과 같이 할 수 있습니다.
var newValue = currentValue ++;