Javascript 类型转换
JavaScript 是一种松散类型语言,大多数情况下运算符会自动将值转换为适当的类型,但在某些情况下特别需要类型转换。
虽然 JavaScript 提供了多种将数据从一种类型转换为另一种类型的方法,但有两种最常见的数据转换:
将值转换为字符串
将值转换为数字
隐式转换
JavaScript 中有各种运算符和函数可以自动将值转换为适当的类型,例如 JavaScript 中的alert() 函数接受任何值并将其转换为字符串。但不同的运算符可能会导致问题,例如“+”运算符。
输入:“2”+“3” 输出:“23” //本例中的+运算符表示字符串连接。 //但是隐式转换“3”到“1”给出了2个输出。
此代码显示了 Javascript 中的隐式类型转换:
document.write('("3" - "1") = ' + ("3" - "1") + "
"); document.write('("3" - 1) = ' + ("3" - 1) + "
"); document.write('("3" * "2") = ' + ("3" * "2") + "
"); document.write('("3" % "2") = ' + ("3" % "2") + "
"); document.write('("3" + null) = ' + ("3" + null) + "
"); (“3”-“1”) = 2 (“3”- 1) = 2 (“3”*“2”)= 6 (“3”%“2”) = 1 ("3" + null) = 3null
将值转换为字符串:
您可以使用 JavaScript 的 String() 或 toString() 函数将值转换为字符串。
字符串语法
字符串(值)
示例:
输入: var v = 1555;vars = 字符串(v); 输出: 现在包含“1555”。
toString 语法
variableName.toString(base)
示例:
输入: var v = 1555; var s = v.toString(); 输出: 现在包含“1555”。
下面的代码将数字转换为字符串,布尔值转换为字符串,日期转换为字符串。
// 编号和日期已分配 // 对于变量 v 和 d var v = 123; var d = new Date('1995-12-17T03:24:00'); //将数字转换为字符串 document.write(" String(v) = " + String(v) + "
"); //将数字转换为字符串 document.write(" String(v + 11) = " + String(v + 11) + "
"); document.write(" String( 10 + 10) = " + String(10 + 10) + "
"); //将布尔值转换为字符串 document.write(" String(false) = " + String(false) + "
"); // 将日期转换为字符串 document.write(" String(d) = " + String(d) + "
");
输出:
字符串(v) = 123 字符串(v + 11) = 134 字符串(10 + 10) = 20 字符串(假)=假 String(d) = Sun 17 Dec 1995 03:24:00 GMT+0530(印度标准时间)
将值转换为数字
可以使用 JavaScript 的 Number() 函数将值转换为数字。您可以将任何数字文本和布尔值转换为数字。如果它是非数字字符串,则会将其转换为 NaN(不是数字)。
语法:
语法
数字(要转换的值)
示例:
输入: 变量=“144”; var n = 数字; 输出: 现在 n 包含 144(数字)。
下面的代码将数字文本、日期和布尔值转换为数字。
// 编号和日期已分配 // 对于变量 v 和 d var v =“144”; var d = new Date('1995-12-17T03:24:00'); // 将字符串转换为数字 document.write(" Number(v) = " + Number(v) + "
"); //将布尔值转换为数字 document.write(" Number(false) = " + Number(false) + "
"); document.write(" Number(true) = " + Number(true) + "
"); // 将日期转换为数字document.write(" 数字(d) = " + 数字(d) + "
");
输出以下结果:
数量(v) = 144 数字(假)= 0 数字(真实)= 1 号码 = 819150840000
如果字符串不是数字,则转换为 NaN,空格或空字符串转换为 0。
// 分配空字符串 var v = ""; // 分配空白 var d =“”; // 分配非数字字符串 var s = "GeeksforGeeks"; // 打印数字的转换后的值 document.write(" Number(v) = " + Number(v) + "
"); document.write(" 数字(d) = " + 数字(d) + "
"); document.write(" 数字 = " + 数字 + "
");
输出以下结果:
数量(v) = 0 数量(d) = 0 数字 = NaN
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
上一篇:从javascript数组中删除空心元素 下一篇:未定义和空有什么区别?
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。