#你不知道的javascript中卷#(5)字符串转数字方法 '+' 方法

1、平常的代码中数字转字符串(当然一般的转换,也可以使用String、toString等):

var a = 1111
var aString = JSON.stringify(a)
console.log(aString)  // 1111
console.log(typeof(aString)) // string

2、平常的代码中字符串转数字(也可以使用,Number,parseInt等):

var a = '111'
var b = JSON.parse(a)
console.log(b) // 111
console.log(typeof(b)) // number

3、今天书上看到一种不经常用到转换方式:一元运算(+)(一元运算被普遍认为是显示强制类型转换)

3.1:例子一

var c = '3.14'
var d = +c
console.log(d) // 3.14
console.log(typeof(d)) // number

不过这种运算尽量不要和其他运算符一起使用,比如 5+ +c等之类的

3.2:例子二

一元运算符+的另一个常见的用途是将日期对象强制转换成数字,返回结果是时间戳

var a = new Date()
var c = +a
console.log(a) // Mon Jan 21 2019 16:06:12 GMT+0800 (中国标准时间)
console.log(c) // 1548057972030

我们常用下面的方法来获取时间戳:

var timestamp = +new Date()
console.log(timestamp) // 1548058144409

注:javascript有一处奇特的用法,即构造函数没有参数时可以不用带(),于是我们可能会碰到:var timestamp = +new Date  这样的写法

3.3:注:对于例子3.2补充

将日期时间转换为时间戳并非只有强制类型转换这一种方法,可以使用下面的方法

// 这一种显式的方法会更好一些
var a = new Date().getTime()
console.log(a) // 1548058684854

// 不过还是使用ES5新加入的静态方法 Date.now()
var a = Date.now()
console.log(a) // 1548058717049

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值