"JavaScript中有哪些数值类型?如何处理数字与字符串相乘的情况?

在JavaScript中,我经常混淆数字和字符,比如’3’和3。JavaScript中的数值有哪些也不是很清楚?希望有高手能点拨下。"... 在JavaScript中,我经常混淆数字和字符,比如’3’和3。JavaScript中的数值有哪些也不是很清楚?希望有高手能点拨下。" 展开
 我来答
taotao19877
2016-09-02
知道答主
回答量:7
采纳率:0%
帮助的人:12.8万
展开全部
你不用担心JavaScript中有哪些数值类型,因为JavaScript数值都为64位的浮点数,所以JavaScript的没有整型、浮点型、双精度等类型。如var i = 125;因为i存储值为数字,所以是以64位浮点数值存储的。

现在回答你的第二个问题:数字是不能与字符串相乘的,如果你非得这么做,那么你将得到一个NAN的值,表示结果不是一个数值。举例例子:
var m = 3;
var n = "b";
console.log(m * n); //输出为NaN,NaN在JavaScript中有特殊的含义,代表非数字
//值,用于指示某个值不是数字。

但是如果字符串中的内容是数值,JavaScript还是有方法使其进行乘法操作的。如下操作:
1、 使用Number方法,判断字符串中的内容是否为数值。如下示例:
var m = "3";
var num = Number(m);

Number方法是JavaScript内置的方法,它会尽量把变量转换为数值,若转换成功,则返回转换后的数值。但不是所有的字符串都能转换成数值,若不能转换为数字的情况,则返回值是NaN。

2、 使用isNaN方法,判断字符是不是NaN。如下示例
if ( isNaN( num)) { //isNaN方法可以判断传入的值是否是非数字值。
console.log('非数字值'); //返回true:传入的值是一个非数字值。
}
else {
console.log(m*num); //返回false:传入的值是一个数字值。可以相乘。
}

所以如果你要将数字与字符串相乘,你需要借助Number和isNaN方法。完整的示例如下:
var m = "b";
var n = 3;
var num = Number(m);
if ( isNaN( num)) {
console.log('非数字值');
}
else {
console.log(m*num);
}

关于JavaScript数据类型的知识,你可以参考下教程网站秒秒学的课程。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式