分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

由echarts想到的js中的时间类型

发布时间:2023-09-06 01:16责任编辑:蔡小小关键词:js

在工作中使用echarts时,偶然发现折线图中对时间类型变量的用法:

now前面的+号何解?

now = new Date(+now + oneDay);

后来查阅资料,看到一篇博客,解释如下:
这是对后面的对象做一个+运算,触发对象执行valueOf进行求值!
而Date实例的valueOf返回它的毫秒数,大家可以尝试如下代码:
var now = new Date, time = now.getTime();console.log(time==now.valueOf());//trueconsole.log(time==+now);//true

再举个例子:

 ???function person() { ???} ???person.prototype.valueOf = function () { ???????return "miaoying"; ???} ???var foo = new person(); ???console.log("hello " + foo);//这里将输出字符串"hello miaoying" ???console.log("hello " + foo.valueOf());//这里将输出字符串"hello miaoying"

echarts中的代码如下:
function randomData() { ???now = new Date(+now + oneDay); ???value = value + Math.random() * 21 - 10; ???return { ???????name: now.toString(), ???????value: [ ???????????[now.getFullYear(), now.getMonth() + 1, now.getDate()].join(‘/‘), ???????????Math.round(value) ???????] ???}}var data = [];var now = +new Date(1997, 9, 3);var oneDay = 24 * 3600 * 1000;var value = Math.random() * 1000;for (var i = 0; i < 1000; i++) { ???data.push(randomData());}option = { ???title: { ???????text: ‘动态数据 + 时间坐标轴‘ ???}, ???tooltip: { ???????trigger: ‘axis‘, ???????formatter: function (params) { ???????????params = params[0]; ???????????var date = new Date(params.name); ???????????return date.getDate() + ‘/‘ + (date.getMonth() + 1) + ‘/‘ + date.getFullYear() + ‘ : ‘ + params.value[1]; ???????}, ???????axisPointer: { ???????????animation: false ???????} ???}, ???xAxis: { ???????type: ‘time‘, ???????splitLine: { ???????????show: false ???????} ???}, ???yAxis: { ???????type: ‘value‘, ???????boundaryGap: [0, ‘100%‘], ???????splitLine: { ???????????show: false ???????} ???}, ???series: [{ ???????name: ‘模拟数据‘, ???????type: ‘line‘, ???????showSymbol: false, ???????hoverAnimation: false, ???????data: data ???}]};

参考:http://www.cnblogs.com/Raoh/p/4212075.html

由echarts想到的js中的时间类型

原文地址:http://www.cnblogs.com/miaoying/p/7648496.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved