JavaScript一元正号运算符示例代码

 更新时间:2019年06月30日 14:42:37   作者:netcy  
这篇文章主要给大家介绍了关于JavaScript一元正号运算符的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用JavaScript具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

本文适合JavaScript初学者。

一元正号介绍

一元正号运算符(+)位于其操作数前面,计算其操作数的数值,如果操作数不是一个数值,会尝试将其转换成一个数值。 尽管一元负号也能转换非数值类型,但是一元正号是转换其他对象到数值的最快方法,也是最推荐的做法,因为它不会对数值执行任何多余操作。

转换字符串

一元正号可以用于转换数值字符串为数字,比如如下代码:

+ "123" // 123
+ "12.3" // 12.3

也可以转换二进制、16进制数值、自然底数的字符串:

+ "0x11" // 17
+ "0b11" // 3
+ "1e10" // 10000000000

看起来 和parseFloat功能类似,但是parseFloat支持字符串后面部分不为数字的情况,一元正号却不行,比如:

parseFloat("1px") // 1
+ "1px" // NaN

如果是空字符串或者多个空格组成的字符串,一元正号会转换为0,parseFloat 结果为NaN

 + ' ' // 0
parseFloat(' ') // NaN

负数形式字符串也可以转换成数值,但是对于十六进制 二进制不适用,对于自然底数适用(parseFloat 都适用):

+'-123' // 123
+ "-0x11" // NaN
+ "-0b11" // NaN
+ "-1e10" // -10000000000

转换日期对象

一元正号转换日期对象为数字,得到时间戳,比如如下代码:

+ new Date(); // 1561020101609

相当于如下代码:

new Date().getTime(); // 1561020101609

转换null、undefined、NaN

一元正号会把null转换为0,undefined 转换为NaN。一元正号施加于NaN,结果还是NaN。代码如下:

+ null // 0
+ undefined // NaN
+ NaN // NaN

转换布尔值
一元正号会把true 转换为1,false转换为0:

+ true;// 1
+ false;// 0

转换数组

一元正号会把空数组[],转换为0。如果数组只有一个元素,切第一个元素为数字或者字符串,会对第一个元素进行转换,如果有多个元素,返回NaN,代码如下:

+ []// 0
+ ['123'] // 123
+ [true] // NaN
+ [1,2] // NaN

总结

一元正号运算符对于数字字符串和日期的转换比较适用。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

相关文章

  • Chrome中模态对话框showModalDialog返回值问题的解决方法

    Chrome中模态对话框showModalDialog返回值问题的解决方法

    chrome中弹出模态对话框,通过window.returnValue赋返回值关闭后,有的情况下无法取得返回值。
    2010-05-05
  • 15条JavaScript最佳实践小结

    15条JavaScript最佳实践小结

    如果你的JavaScript代码只是增加一些功能,那么尽管大胆地把文件引用放在HTML底部吧,你会看到明显的速度提升。本文总结了15条小建议,感兴趣的朋友可以参考下
    2013-08-08
  • Echarts 3D散点图实战案例

    Echarts 3D散点图实战案例

    这篇文章主要给大家介绍了关于Echarts 3D散点图的相关资料, Echarts散点图是一种常用的数据可视化图表类型,用于展示两个或多个维度的数据分布情况,需要的朋友可以参考下
    2023-11-11
  • 微信小程序开发实战快速入门教程

    微信小程序开发实战快速入门教程

    这篇文章主要为大家介绍了开发一个微信小程序实战快速入门教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04
  • 弹出最简单的模式化遮罩层的js代码

    弹出最简单的模式化遮罩层的js代码

    弹出模式化遮罩层的方法有很多,在本文为大家介绍下使用js实现最简单的模式化遮罩层,具体如下,感兴趣的朋友不要错过
    2013-12-12
  • 小程序实现投票进度条

    小程序实现投票进度条

    这篇文章主要为大家详细介绍了小程序实现投票进度条,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • IE和Firefox在JavaScript应用中的兼容性探讨

    IE和Firefox在JavaScript应用中的兼容性探讨

    今天在使用CSS属性的时候发现"cursor:hand;"在Firefox中鼠标不会变为手型,后来上网搜索了一下资料,发现hand这个cursor属性在Firrefox中不兼容,使用"cursor:pointer"就都可以显示了。
    2008-04-04
  • Bootstrap菜单按钮及导航实例解析

    Bootstrap菜单按钮及导航实例解析

    这篇文章主要介绍了Bootstrap菜单按钮及导航的相关资料,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-09-09
  • 根据地区不同显示时间的javascript代码

    根据地区不同显示时间的javascript代码

    根据地区不同显示时间的javascript代码...
    2007-08-08
  • JavaScript获取表单内所有元素值的方法

    JavaScript获取表单内所有元素值的方法

    这篇文章主要介绍了JavaScript获取表单内所有元素值的方法,实例分析了javascript操作表单元素的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04

最新评论