猿问

vue中 计算结果NaN问题

html: {{ this.starts }}

js:

     data() {        return {
           seconds1: 86400,
           starts: (Date.parse(new Date()) / 1000) - Number(this.seconds1),

结果:NaN

请问为什么会是NaN?


胡说叔叔
浏览 3809回答 1
1回答

qq_花开花谢_0

给上面的回答做个补充:你的用法相当于var a = {    time : 1,     count : a.time + 1}这个表达式做了什么:首先声明a变量,然后声明一个对象,赋值time,count属性,最后是把对象赋值给a标量,这个顺序要搞明白,在赋值count属性的时候,a还是undefined,所以a.time会报错,那到你这里,就是this.seconds1还是undefined,所以结果是NaN解决:提前声明一个变量保存该数据data() {    let seconds = 86400     return {        seconds1: seconds,        starts: (Date.parse(new Date()) / 1000) - Number(seconds),
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答