Javascript 将两个数字相加将它们连接起来,而不是计算总和
我将两个数字相加,但没有得到正确的值 例如,执行Javascript 将两个数字相加将它们连接起来,而不是计算总和,javascript,html,Javascript,Html,我将两个数字相加,但没有得到正确的值 例如,执行1+2返回12,而不是3 我在这个代码中做错了什么 函数myFunction(){ var y=document.getElementById(“txt1”).value; var z=document.getElementById(“txt2”).value; var x=y+z; document.getElementById(“demo”).innerHTML=x; } 单击按钮以计算x。 试试看 输入第一个数字: 输入第二个数字:
1+2
返回12,而不是3
我在这个代码中做错了什么
函数myFunction(){
var y=document.getElementById(“txt1”).value;
var z=document.getElementById(“txt2”).value;
var x=y+z;
document.getElementById(“demo”).innerHTML=x;
}
单击按钮以计算x。
试试看
输入第一个数字:
输入第二个数字:
它们实际上是字符串,而不是数字。从字符串生成数字的最简单方法是在其前面加上+
:
var x = +y + +z;
您需要使用javaScript的parseInt()
方法将字符串转换回数字。现在它们是字符串,所以添加两个字符串将它们连接起来,这就是为什么会得到“12”。请使用,但请确保指定一个基数值;否则,您将遇到几个错误(如果字符串以“0”开头,则基数为八进制/8等)
希望这有帮助 您可以使用正则表达式进行预检查,以确定它们是否是类似的数字
function myFunction() {
var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
if((x.search(/[^0-9]/g) != -1)&&(y.search(/[^0-9]/g) != -1))
var x = Number(y)+ Number(z);
else
alert("invalid values....");
document.getElementById("demo").innerHTML = x;
}
只需添加一个简单的类型转换方法,作为文本中的输入。使用以下命令:
var y = parseInt(document.getElementById("txt1").value);
var z = parseInt(document.getElementById("txt2").value);
var x = y + z;
很简单:
<html>
<body>
<p>Click the button to calculate x.</p>
<button onclick="myFunction()">Try it</button>
<br/>
<br/>Enter first number:
<input type="text" id="txt1" name="text1">Enter second number:
<input type="text" id="txt2" name="text2">
<p id="demo"></p>
<script>
function myFunction() {
var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
var x = +y + +z;
document.getElementById("demo").innerHTML = x;
}
</script>
</body>
</html>
单击按钮以计算x
试试看
输入第一个数字:
输入第二个数字:
函数myFunction(){
var y=document.getElementById(“txt1”).value;
var z=document.getElementById(“txt2”).value;
var x=+y++z;
document.getElementById(“demo”).innerHTML=x;
}
我只使用了Number()
:
var i=2;
var j=3;
var k = Number(i) + Number(j); // 5
另一种解决方案是共享:):
试试这个:
<!DOCTYPE html>
<html>
<body>
<p>Add Section</p>
<label>First Number:</label>
<input id="txt1" type="text"/><br />
<label>Second Number:</label>
<input id="txt2" type="text"/><br />
<input type="button" name="Add" value="Add" onclick="addTwoNumber()"/>
<p id="demo"></p>
<script>
function myFunction() {
document.getElementById("demo").innerHTML = Date();
}
function addTwoNumber(){
var a = document.getElementById("txt1").value;
var b = document.getElementById("txt2").value;
var x = Number(a) + Number(b);
document.getElementById("demo").innerHTML = "Add Value: " + x;
}
</script>
</body>
</html>
添加节
第一个号码:
第二个号码:
函数myFunction(){
document.getElementById(“demo”).innerHTML=Date();
}
函数addTwoNumber(){
var a=document.getElementById(“txt1”).value;
var b=document.getElementById(“txt2”).value;
变量x=数量(a)+数量(b);
document.getElementById(“demo”).innerHTML=“添加值:”+x;
}
简单
var result = parseInt("1") + parseInt("2");
console.log(result ); // Outputs 3
添加步骤中缺少类型转换…
var x=y+z代码>应该是var x=parseInt(y)+parseInt(z)代码>
单击按钮以计算x
试试看
输入第一个数字:
输入第二个数字:
函数myFunction()
{
var y=document.getElementById(“txt1”).value;
var z=document.getElementById(“txt2”).value;
var x=parseInt(y)+parseInt(z);
document.getElementById(“demo”).innerHTML=x;
}
函数加法()
{
var a=parseInt(form.input1.value);
var b=parseInt(form.input2.value);
变量c=a+b
文件。编写(c);
}
此代码将两个变量相加!把它放在你的功能中
var y = parseInt(document.getElementById("txt1").value);
var z = parseInt(document.getElementById("txt2").value);
var x = (y +z);
document.getElementById("demo").innerHTML = x;`
如果我们有两个输入字段,那么从输入字段中获取值,然后使用JavaScript添加它们
$('input[name="yourname"]').keyup(function(event) {
/* Act on the event */
var value1 = $(this).val();
var value2 = $('input[name="secondName"]').val();
var roundofa = +value2+ +value1;
$('input[name="total"]').val(addition);
});
这并不是总数;相反,它将连接它:
var x = y + z;
您需要执行以下操作:
var x = (y)+(z);
必须使用parseInt来指定对数字的操作。例如:
var x = parseInt(y) + parseInt(z); [final soulution, as everything us]
下面是解析函数中变量的代码
<html>
<body>
<p>Click the button to calculate x.</p>
<button onclick="myFunction()">Try it</button>
<br/>
<br/>Enter first number:
<input type="text" id="txt1" name="text1">
<br>Enter second number:
<input type="text" id="txt2" name="text2">
<p id="demo"></p>
<script>
function myFunction() {
var y = parseInt(document.getElementById("txt1").value);
var z = parseInt(document.getElementById("txt2").value);
var x = y + z;
document.getElementById("demo").innerHTML = x;
}
</script>
</body>
</html>
单击按钮以计算x
试试看
输入第一个数字:
输入第二个数字:
函数myFunction(){
var y=parseInt(document.getElementById(“txt1”).value);
var z=parseInt(document.getElementById(“txt2”).value);
var x=y+z;
document.getElementById(“demo”).innerHTML=x;
}
回答
使用parseFloat
它将字符串转换为包含十进制值的数字
function myFunction() {
var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
var x = parseFloat(y) + parseFloat(z);
document.getElementById("demo").innerHTML = x;
}
单击按钮以计算x。
试试看
输入第一个数字:
输入第二个数字:
函数和()
{
var number1=document.getElementById('num1')。值;
var number2=document.getElementById('num2')。值;
如果(数字1=''){
数字1=0
var num3=parseInt(number1)+parseInt(number2);
document.getElementById('result')。值=num3;
}
否则如果(数字2==“”)
{
数字2=0;
var num3=parseInt(number1)+parseInt(number2);
document.getElementById('result')。值=num3;
}
其他的
{
var num3=parseInt(number1)+parseInt(number2);
document.getElementById('result')。值=num3;
}
}
您还可以编写:
var z=x--y;
你会得到正确的答案
<body>
<input type="text" id="number1" name="">
<input type="text" id="number2" name="">
<button type="button" onclick="myFunction()">Submit</button>
<p id="demo"></p>
<script>
function myFunction() {
var x, y ;
x = document.getElementById('number1').value;
y = document.getElementById('number2').value;
var z = x - -y ;
document.getElementById('demo').innerHTML = z;
}
</script>
</body>
提交
函数myFunction(){
变量x,y;
x=document.getElementById('number1')。值;
y=document.getElementById('number2')。值;
var z=x--y;
document.getElementById('demo').innerHTML=z;
}
一般来说,以下内容可能有用
- 首先,HTML表单字段仅限于文本。这尤其适用于文本框,即使您已尽力确保该值看起来像一个数字
- 第二,JavaScript,不管好坏,已经用两种含义重载了
+
操作符:它增加了number
var x = parseInt(y) + parseInt(z); [final soulution, as everything us]
<html>
<body>
<p>Click the button to calculate x.</p>
<button onclick="myFunction()">Try it</button>
<br/>
<br/>Enter first number:
<input type="text" id="txt1" name="text1">
<br>Enter second number:
<input type="text" id="txt2" name="text2">
<p id="demo"></p>
<script>
function myFunction() {
var y = parseInt(document.getElementById("txt1").value);
var z = parseInt(document.getElementById("txt2").value);
var x = y + z;
document.getElementById("demo").innerHTML = x;
}
</script>
</body>
</html>
function myFunction() {
var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
var x = parseFloat(y) + parseFloat(z);
document.getElementById("demo").innerHTML = x;
}
<p>
Click the button to calculate x.
<button onclick="myFunction()">Try it</button>
</p>
<p>
Enter first number:
<input type="text" id="txt1" name="text1" value="1">
Enter second number:
<input type="text" id="txt2" name="text2" value="2">
</p>
<p id="demo"></p>
<input type="text" name="num1" id="num1" onkeyup="sum()">
<input type="text" name="num2" id="num2" onkeyup="sum()">
<input type="text" name="num2" id="result">
<script>
function sum()
{
var number1 = document.getElementById('num1').value;
var number2 = document.getElementById('num2').value;
if (number1 == '') {
number1 = 0
var num3 = parseInt(number1) + parseInt(number2);
document.getElementById('result').value = num3;
}
else if(number2 == '')
{
number2 = 0;
var num3 = parseInt(number1) + parseInt(number2);
document.getElementById('result').value = num3;
}
else
{
var num3 = parseInt(number1) + parseInt(number2);
document.getElementById('result').value = num3;
}
}
</script>
<body>
<input type="text" id="number1" name="">
<input type="text" id="number2" name="">
<button type="button" onclick="myFunction()">Submit</button>
<p id="demo"></p>
<script>
function myFunction() {
var x, y ;
x = document.getElementById('number1').value;
y = document.getElementById('number2').value;
var z = x - -y ;
document.getElementById('demo').innerHTML = z;
}
</script>
</body>
var data=parseInt(form.elements['data'].value); // or parseFloat
var data=parseInt(form.elements['data'].value) || 0;
var1 - (- var2)
<form oninput="result.value=parseInt(a.valueAsNumber)+parseInt(b.valueAsNumber)">
<input type="number" id="a" name="a" value="10" /> +
<input type="number" id="b" name="b" value="50" /> =
<output name="result" for="a b">60</output>
</form>
<form oninput="result.value=parseInt(a.valueAsNumber)+parseInt(b.valueAsNumber)">
<input type="range" id="a" name="a" value="10" /> +
<input type="number" id="b" name="b" value="50" /> =
<output name="result" for="a b">60</output>
</form>
function calculate(a, b) {
return a + b
}
console.log(calculate(5, 6))