This is an automated email from the ASF dual-hosted git repository.

shenyi pushed a commit to branch next
in repository https://gitbox.apache.org/repos/asf/incubator-echarts.git


The following commit(s) were added to refs/heads/next by this push:
     new 6eca9ac  style(time): improve code style
6eca9ac is described below

commit 6eca9ac087e092f726d7a5c7c3371b5b244a85ce
Author: pissang <bm2736...@gmail.com>
AuthorDate: Thu Jul 30 00:35:49 2020 +0800

    style(time): improve code style
---
 src/scale/Time.ts | 91 +++++++++++++++++++++++++++++++++----------------------
 1 file changed, 54 insertions(+), 37 deletions(-)

diff --git a/src/scale/Time.ts b/src/scale/Time.ts
index 6f7a121..b12459a 100644
--- a/src/scale/Time.ts
+++ b/src/scale/Time.ts
@@ -302,14 +302,31 @@ function getIntervalTicks(
     const ticks: TimeScaleTick[] = [];
     const unitNames = timeUnits;
     let levelId = 0;
+
+    const setFullYearMethodName = 'set' + utc + 'FullYear' as 'setFullYear' | 
'setUTCFullYear';
+    const setMonthMethodName = 'set' + utc + 'Month' as 'setMonth' | 
'setUTCMonth';
+    const setDateMethodName = 'set' + utc + 'Date' as 'setDate' | 'setUTCDate';
+    const setHoursMethodName = 'set' + utc + 'Hours' as 'setHours' | 
'setUTCHours';
+    const setMinutesMethodName = 'set' + utc + 'Minutes' as 'setMinutes' | 
'setUTCMinutes';
+    const setSecondsMethodName = 'set' + utc + 'Seconds' as 'setSeconds' | 
'setUTCSeconds';
+    const setMillisecondsMethodName = 'set' + utc + 'Milliseconds' as 
'setMilliseconds' | 'setUTCMilliseconds';
+
+    const getFullYearMethodName = 'get' + utc + 'FullYear' as 'getFullYear' | 
'getUTCFullYear';
+    const getMonthMethodName = 'get' + utc + 'Month' as 'getMonth' | 
'getUTCMonth';
+    const getDateMethodName = 'get' + utc + 'Date' as 'getDate' | 'getUTCDate';
+    const getHoursMethodName = 'get' + utc + 'Hours' as 'getHours' | 
'getUTCHours';
+    const getMinutesMethodName = 'get' + utc + 'Minutes' as 'getMinutes' | 
'getUTCMinutes';
+    const getSecondsMethodName = 'get' + utc + 'Seconds' as 'getSeconds' | 
'getUTCSeconds';
+    const getMillisecondsMethodName = 'get' + utc + 'Milliseconds' as 
'getMilliseconds' | 'getUTCMilliseconds';
+
     for (let i = 0, hasTickInLevel = false; i < unitNames.length && 
ticks.length < safeLimit; ++i) {
-        const date = new Date(extent[0]) as any;
+        const date = new Date(extent[0]);
 
         if (unitNames[i] === 'week' || unitNames[i] === 'half-week') {
-            date['set' + utc + 'Hours'](0);
-            date['set' + utc + 'Minutes'](0);
-            date['set' + utc + 'Seconds'](0);
-            date['set' + utc + 'Milliseconds'](0);
+            date[setHoursMethodName](0);
+            date[setMinutesMethodName](0);
+            date[setSecondsMethodName](0);
+            date[setMillisecondsMethodName](0);
 
             if (extent[0] === date.getTime()) {
                 ticks.push({
@@ -324,7 +341,7 @@ function getIntervalTicks(
                 const dates = approxInterval > ONE_DAY * 8 ? []
                     : (approxInterval > ONE_DAY * 3.5 ? [8, 16, 24] : [4, 8, 
12, 16, 20, 24, 28]);
                 for (let d = 0; d < dates.length; ++d) {
-                    date['set' + utc + 'Date'](dates[d]);
+                    date[setDateMethodName](dates[d]);
                     const dateTime = (date as Date).getTime();
                     if (dateTime > extent[1]) {
                         isDateWithinExtent = false;
@@ -338,7 +355,7 @@ function getIntervalTicks(
                         hasTickInLevel = true;
                     }
                 }
-                date['set' + utc + 'Month'](date['get' + utc + 'Month']() + 1);
+                date[setMonthMethodName](date[getMonthMethodName]() + 1);
             }
         }
         else if (!isUnitValueSame(
@@ -353,27 +370,27 @@ function getIntervalTicks(
                     case 'half-year':
                     case 'quarter':
                         if (isFirst) {
-                            date['set' + utc + 'Month'](0);
-                            date['set' + utc + 'Date'](1);
-                            date['set' + utc + 'Hours'](0);
-                            date['set' + utc + 'Minutes'](0);
-                            date['set' + utc + 'Seconds'](0);
+                            date[setMonthMethodName](0);
+                            date[setDateMethodName](1);
+                            date[setHoursMethodName](0);
+                            date[setMinutesMethodName](0);
+                            date[setSecondsMethodName](0);
                         }
                         else {
                             const months = unitNames[i] === 'year'
                                 ? 12 : (unitNames[i] === 'half-year' ? 6 : 3);
                             if (unitNames[i] === 'half-year' || unitNames[i] 
=== 'quarter') {
-                                date['set' + utc + 'Month'](date['get' + utc + 
'Month']() + months);
+                                
date[setMonthMethodName](date[getMonthMethodName]() + months);
                             }
                             else {
                                 const yearSpan = Math.max(1, 
Math.round(approxInterval / ONE_DAY / 365));
-                                date['set' + utc + 'FullYear'](date['get' + 
utc + 'FullYear']() + yearSpan);
+                                
date[setFullYearMethodName](date[getFullYearMethodName]() + yearSpan);
                                 if (date.getTime() > extent[1] && yearSpan > 
1) {
                                     // For the last data
-                                    date['set' + utc + 'FullYear'](date['get' 
+ utc + 'FullYear']() - yearSpan + 1);
+                                    
date[setFullYearMethodName](date[getFullYearMethodName]() - yearSpan + 1);
                                     if (date.getTime() < extent[1]) {
                                         // The last data is not in year unit, 
make it invalid by larger than extent[1]
-                                        date['set' + utc + 
'FullYear'](date['get' + utc + 'FullYear']() + yearSpan);
+                                        
date[setFullYearMethodName](date[getFullYearMethodName]() + yearSpan);
                                     }
                                 }
                             }
@@ -382,13 +399,13 @@ function getIntervalTicks(
 
                     case 'month':
                         if (isFirst) {
-                            date['set' + utc + 'Date'](1);
-                            date['set' + utc + 'Hours'](0);
-                            date['set' + utc + 'Minutes'](0);
-                            date['set' + utc + 'Seconds'](0);
+                            date[setDateMethodName](1);
+                            date[setHoursMethodName](0);
+                            date[setMinutesMethodName](0);
+                            date[setSecondsMethodName](0);
                         }
                         else {
-                            date['set' + utc + 'Month'](date['get' + utc + 
'Month']() + 1);
+                            
date[setMonthMethodName](date[getMonthMethodName]() + 1);
                         }
                         break;
 
@@ -396,58 +413,58 @@ function getIntervalTicks(
                     case 'half-day':
                     case 'quarter-day':
                         if (isFirst) {
-                            date['set' + utc + 'Hours'](0);
-                            date['set' + utc + 'Minutes'](0);
-                            date['set' + utc + 'Seconds'](0);
+                            date[setHoursMethodName](0);
+                            date[setMinutesMethodName](0);
+                            date[setSecondsMethodName](0);
                         }
                         else if (unitNames[i] === 'half-day') {
-                            date['set' + utc + 'Hours'](date['get' + utc + 
'Hours']() + 12);
+                            
date[setHoursMethodName](date[getHoursMethodName]() + 12);
                         }
                         else if (unitNames[i] === 'quarter-day') {
-                            date['set' + utc + 'Hours'](date['get' + utc + 
'Hours']() + 6);
+                            
date[setHoursMethodName](date[getHoursMethodName]() + 6);
                         }
                         else {
-                            date['set' + utc + 'Date'](date['get' + utc + 
'Date']() + 1);
+                            date[setDateMethodName](date[getDateMethodName]() 
+ 1);
                         }
                         break;
 
                     case 'hour':
                         if (isFirst) {
-                            date['set' + utc + 'Minutes'](0);
-                            date['set' + utc + 'Seconds'](0);
+                            date[setMinutesMethodName](0);
+                            date[setSecondsMethodName](0);
                         }
                         else {
-                            date['set' + utc + 'Hours'](date['get' + utc + 
'Hours']() + 1);
+                            
date[setHoursMethodName](date[getHoursMethodName]() + 1);
                         }
                         break;
 
                     case 'minute':
                         if (isFirst) {
-                            date['set' + utc + 'Minutes'](0);
-                            date['set' + utc + 'Seconds'](0);
+                            date[setMinutesMethodName](0);
+                            date[setSecondsMethodName](0);
                         }
                         else {
-                            date['set' + utc + 'Minutes'](date['get' + utc + 
'Minutes']() + 1);
+                            
date[setMinutesMethodName](date[getMinutesMethodName]() + 1);
                         }
                         break;
 
                     case 'second':
                         if (!isFirst) {
-                            date['set' + utc + 'Seconds'](date['get' + utc + 
'Seconds']() + 1);
+                            
date[setSecondsMethodName](date[getSecondsMethodName]() + 1);
                         }
                         break;
 
                     case 'millisecond':
                         if (isFirst) {
-                            date['set' + utc + 'Milliseconds'](0);
+                            date[setMillisecondsMethodName](0);
                         }
                         else {
-                            date['set' + utc + 'Milliseconds'](date['get' + 
utc + 'Milliseconds']() + 100);
+                            
date[setMillisecondsMethodName](date[getMillisecondsMethodName]() + 100);
                         }
                         break;
                 }
                 if (isFirst && unitNames[i] !== 'millisecond') {
-                    date['set' + utc + 'Milliseconds'](0);
+                    date[setMillisecondsMethodName](0);
                 }
 
                 const dateValue = (date as Date).getTime();


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@echarts.apache.org
For additional commands, e-mail: commits-h...@echarts.apache.org

Reply via email to