[javascript] JS가 두 개의 문자열을 합치는 대신 수학을 강제하는 방법

정수 변수에 5를 추가하려면 자바 스크립트가 필요하지만 대신 변수를 문자열로 취급하므로 변수를 작성한 다음 “문자열”끝에 5를 추가합니다. 대신 수학을 강요 할 수 있습니까?

var dots = document.getElementById("txt").value; // 5
function increase(){
    dots = dots + 5;
}

산출: 55

강제로 출력하려면 10어떻게해야합니까?



답변

당신은 라인이 있습니다

dots = document.getElementById("txt").value;

파일에서 txt의 내용이 숫자로 제한되지 않기 때문에 점이 문자열로 설정됩니다.

int로 변환하려면 줄을 다음과 같이 변경하십시오.

dots = parseInt(document.getElementById("txt").value, 10);

참고 : 10여기서는 10 진수 (밑수 10)를 지정합니다. 이것이 없으면 일부 브라우저는 문자열을 올바르게 해석하지 못할 수 있습니다. MDN :을 참조하십시오 parseInt.


답변

가장 간단한 것 :

dots = dots*1+5;

점은 숫자로 변환됩니다.


답변

잊지 마세요- parseFloat();소수를 다루는 경우 사용 합니다.


답변

여기에 표시되지 않기 때문에이 답변을 추가하고 있습니다.

한 가지 방법은 값 앞에 ‘+’문자를 넣는 것입니다.

예:

var x = +'11.5' + +'3.5'

x === 15

나는 이것이 가장 간단한 방법이라는 것을 알았습니다.

이 경우 라인 :

dots = document.getElementById("txt").value;

변경 될 수 있습니다

dots = +(document.getElementById("txt").value);

강제로 숫자로

노트:

+'' === 0
+[] === 0
+[5] === 5
+['5'] === 5


답변

parseInt() 트릭을해야한다

var number = "25";
var sum = parseInt(number, 10) + 10;
var pin = number + 10;

당신에게 준다

sum == 35
pin == "2510"

http://www.w3schools.com/jsref/jsref_parseint.asp

참고 : 10in parseInt(number, 10)은 10 진수 (밑수 10) 를 지정합니다. 이것이 없으면 일부 브라우저는 문자열을 올바르게 해석하지 못할 수 있습니다. MDN :을 참조하십시오 parseInt.


답변

이것은 또한 당신을 위해 작동합니다.

dots -= -5;


답변

정말 간단합니다

var total = (1 * yourFirstVariablehere) + (1 * yourSecondVariablehere)

이것은 자바 스크립트에 * 로그인에 대한 혼동이 없기 때문에 자바 스크립트가 증식하도록 강제합니다.