js中字符串和数字相加,如何让其变成数字与数字相加?

JavaScript09

js中字符串和数字相加,如何让其变成数字与数字相加?,第1张

需要用parseInt函数将得到的字符串强转为Int类型进行相加就可以了。

例如document.getElementById("DVDNumber").value =

document.getElementById("DVDNumber").value+1

如果不用ParseInt函数强转,那么得到的结果只是在原有字符串上拼上“1”。

如果要改为逻辑运行就要添加parseInt函数:

document.getElementById("DVDNumber").value = parseInt(

document.getElementById("DVDNumber").value)+1

扩展资料:

parseInt函数可以将字符串强转为整数类型。

parseDouble函数可以将字符串强转为double类型。

parseFloat函数可以将字符串强转为浮点类型。

方法一:使用"+"将两个字符串"相加"

示例:

var longString = "One piece " + "plus one more piece."

//结果:longString值为:"One piece plus one more piece."

方法二: 要将多个字符串累积为一个字符串,还可以使用"+="操作符:

示例:

var result = ""

result += "My name is Anders"

result += " and my age is 25"

//结果:result值为"My name is Anders and my age is 25"

方法三:方法concat(),它完成与"+"相同的功能:string.concat(value1, value2, ...)

示例:

var str4="字符串连接"

str4=str4.concat("use concat function connec string")

//结果:"字符串链接use concat function connec string"

/**

** 加法函数,用来得到精确的加法结果

** 说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。

** 调用:accAdd(arg1,arg2)

** 返回值:arg1加上arg2的精确结果

**/function accAdd(arg1, arg2) {    var r1, r2, m, c   try {

r1 = arg1.toString().split(".")[1].length

}    catch (e) {

r1 = 0

}    try {

r2 = arg2.toString().split(".")[1].length

}    catch (e) {

r2 = 0

}

c = Math.abs(r1 - r2)

m = Math.pow(10, Math.max(r1, r2)) 

if (c >0) {        var cm = Math.pow(10, c)       if (r1 >r2) {

arg1 = Number(arg1.toString().replace(".", ""))

arg2 = Number(arg2.toString().replace(".", "")) * cm

} else {

arg1 = Number(arg1.toString().replace(".", "")) * cm

arg2 = Number(arg2.toString().replace(".", ""))

}

} else {

arg1 = Number(arg1.toString().replace(".", ""))

arg2 = Number(arg2.toString().replace(".", ""))

}    return (arg1 + arg2) / m

}//给Number类型增加一个add方法,调用起来更加方便。

Number.prototype.add = function

(arg) {    return accAdd(arg, this)

}

扩展资料

var a = 1, 

var b = 2, 

var c = a + b 

这样c得出来的解果是12,

使用Number()函数可以解决这个问题,如下 

var c = Number(a) + Number(b) 

这样c得出来的解果是3,

JavaScript Number() 函数对象的值转换为数字。

<script type="text/javascript">

var test1= new Boolean(true)

var test2= new Boolean(false)

var test3= new Date()

var test4= new String("999")

var test5= new String("999 888")

document.write(Number(test1)+ "<br />")

document.write(Number(test2)+ "<br />")

document.write(Number(test3)+ "<br />")

document.write(Number(test4)+ "<br />")

document.write(Number(test5)+ "<br />")</script>