Javascript += 等效?
Javascript += equivalent?
我的代码是一个简单的函数,它检查按下了哪个单选按钮,并将该单选按钮的值添加到我的 var input = 0;
。但是,我知道我做错了什么,但输出是错误的。当 if
语句之一为真时,而不是 input(0) 现在等于自身加上 getElementById("small").value
的新值,它打印出 010
而不是现在 10
.
我知道 Java 中有一个类似于 input += getElementById("small").value;
的约定,但这似乎不起作用。因此,正如您在下面的示例中看到的那样,我尝试了 input = input + /*code*/;
的替代方案,但仍然没有成功。
我是 JavaScript 的新手,但对 Java 非常熟悉。我想我只是在这里使用了错误的语法,但我所有的 Google 搜索都是失败的。
function calculate()
{
var input = 0;
if (document.getElementById("small").checked)
{
input = input + document.getElementById("small").value;
}
else if (document.getElementById("medium").checked)
{
input = input + document.getElementById("medium").value;
}
else if (document.getElementById("large").checked)
{
input = input + document.getElementById("large").value;
}
else
{
alert("failed");
}
document.getElementById("outar").innerHTML = input;
}
您需要使用 parseInt
或 parseFloat
将 .value
转换为整数或浮点数。 .value
是一个字符串。
您正在尝试对字符串进行算术运算。您需要在每个 document.getElementById("....").value
表达式周围使用 parseInt()
,因为 .value
属性 是一个字符串。
示例:
input += parseInt(document.getElementById("small").value);
默认情况下,您的值不是数字,而是字符串。你必须先解析它:
input += parseInt(document.getElementById("large").value);
您可以在字符串值之前添加一个额外的 + 符号,以便将其转换为数字:
input += +document.getElementById("large").value;
Javascript 是动态类型语言,而不是像 java 这样的静态类型语言。
document.getElementById("small").value returns 需要使用 parseInt() 转换为 int 的字符串。
Ho[e 有帮助:)
你也可以参考这个link-
value 的返回值是一个字符串。在进行任何算术运算之前,您必须将其转换为 int。
JavaScript 是一种动态类型语言,而不是像 java 这样的静态类型语言。
Return Value: 字符串,表示文本字段的值
我的代码是一个简单的函数,它检查按下了哪个单选按钮,并将该单选按钮的值添加到我的 var input = 0;
。但是,我知道我做错了什么,但输出是错误的。当 if
语句之一为真时,而不是 input(0) 现在等于自身加上 getElementById("small").value
的新值,它打印出 010
而不是现在 10
.
我知道 Java 中有一个类似于 input += getElementById("small").value;
的约定,但这似乎不起作用。因此,正如您在下面的示例中看到的那样,我尝试了 input = input + /*code*/;
的替代方案,但仍然没有成功。
我是 JavaScript 的新手,但对 Java 非常熟悉。我想我只是在这里使用了错误的语法,但我所有的 Google 搜索都是失败的。
function calculate()
{
var input = 0;
if (document.getElementById("small").checked)
{
input = input + document.getElementById("small").value;
}
else if (document.getElementById("medium").checked)
{
input = input + document.getElementById("medium").value;
}
else if (document.getElementById("large").checked)
{
input = input + document.getElementById("large").value;
}
else
{
alert("failed");
}
document.getElementById("outar").innerHTML = input;
}
您需要使用 parseInt
或 parseFloat
将 .value
转换为整数或浮点数。 .value
是一个字符串。
您正在尝试对字符串进行算术运算。您需要在每个 document.getElementById("....").value
表达式周围使用 parseInt()
,因为 .value
属性 是一个字符串。
示例:
input += parseInt(document.getElementById("small").value);
默认情况下,您的值不是数字,而是字符串。你必须先解析它:
input += parseInt(document.getElementById("large").value);
您可以在字符串值之前添加一个额外的 + 符号,以便将其转换为数字:
input += +document.getElementById("large").value;
Javascript 是动态类型语言,而不是像 java 这样的静态类型语言。 document.getElementById("small").value returns 需要使用 parseInt() 转换为 int 的字符串。
Ho[e 有帮助:)
你也可以参考这个link-
value 的返回值是一个字符串。在进行任何算术运算之前,您必须将其转换为 int。
JavaScript 是一种动态类型语言,而不是像 java 这样的静态类型语言。
Return Value: 字符串,表示文本字段的值