diff --git a/src/components/Compare/SidebarStates.vue b/src/components/Compare/SidebarStates.vue index 13f0f23..a5187bb 100644 --- a/src/components/Compare/SidebarStates.vue +++ b/src/components/Compare/SidebarStates.vue @@ -341,7 +341,7 @@ const secondaryStatData = ref(null); */ const getPercentLabel = (val) => { if (Number((val * 100).toFixed(1)) >= 100) return 100; - else return parseFloat((val * 100).toFixed(1)); + else return Number.parseFloat((val * 100).toFixed(1)); }; /** diff --git a/src/components/Discover/Conformance/ConformanceResults.vue b/src/components/Discover/Conformance/ConformanceResults.vue index 25f0c0f..b213184 100644 --- a/src/components/Discover/Conformance/ConformanceResults.vue +++ b/src/components/Discover/Conformance/ConformanceResults.vue @@ -505,7 +505,7 @@ const progressWidth = (value) => { */ const getPercentLabel = (val) => { if (Number((val * 100).toFixed(1)) >= 100) return 100; - else return parseFloat((val * 100).toFixed(1)); + else return Number.parseFloat((val * 100).toFixed(1)); }; /** diff --git a/src/components/Discover/Conformance/MoreModal.vue b/src/components/Discover/Conformance/MoreModal.vue index 85ae803..56f7d8a 100644 --- a/src/components/Discover/Conformance/MoreModal.vue +++ b/src/components/Discover/Conformance/MoreModal.vue @@ -277,7 +277,7 @@ watch(infinite404, (newValue) => { */ function getPercentLabel(val) { if (Number((val * 100).toFixed(1)) >= 100) return 100; - else return parseFloat((val * 100).toFixed(1)); + else return Number.parseFloat((val * 100).toFixed(1)); } /** * set progress bar width diff --git a/src/components/Discover/Map/Filter/AttributesFilter.vue b/src/components/Discover/Map/Filter/AttributesFilter.vue index d4f4a4f..2a3aae6 100644 --- a/src/components/Discover/Map/Filter/AttributesFilter.vue +++ b/src/components/Discover/Map/Filter/AttributesFilter.vue @@ -936,7 +936,7 @@ function sliderValueRange(e, direction) { } } // Recalculate the chart mask - if (!isNaN(closestIndexes[0]) && !isNaN(closestIndexes[1])) + if (!Number.isNaN(closestIndexes[0]) && !Number.isNaN(closestIndexes[1])) resizeMask(chartComplete.value); else return; } diff --git a/src/components/Discover/Map/Filter/TimeframesFilter.vue b/src/components/Discover/Map/Filter/TimeframesFilter.vue index 5d921ca..399bc5c 100644 --- a/src/components/Discover/Map/Filter/TimeframesFilter.vue +++ b/src/components/Discover/Map/Filter/TimeframesFilter.vue @@ -391,7 +391,7 @@ function sliderTimeRange(e, direction) { if (direction === "start") endMinDate.value = e; else if (direction === "end") startMaxDate.value = e; // Recalculate the chart mask - if (!isNaN(closestIndexes[0]) && !isNaN(closestIndexes[1])) + if (!Number.isNaN(closestIndexes[0]) && !Number.isNaN(closestIndexes[1])) resizeMask(chart.value); else return; } diff --git a/src/components/Discover/Map/Filter/TraceFilter.vue b/src/components/Discover/Map/Filter/TraceFilter.vue index 6c0c10b..9594730 100644 --- a/src/components/Discover/Map/Filter/TraceFilter.vue +++ b/src/components/Discover/Map/Filter/TraceFilter.vue @@ -334,7 +334,7 @@ function barOptions() { */ function getPercentLabel(val) { if (Number((val * 100).toFixed(1)) >= 100) return 100; - else return parseFloat((val * 100).toFixed(1)); + else return Number.parseFloat((val * 100).toFixed(1)); } /** diff --git a/src/components/Discover/StatusBar.vue b/src/components/Discover/StatusBar.vue index a4065a0..2638069 100644 --- a/src/components/Discover/StatusBar.vue +++ b/src/components/Discover/StatusBar.vue @@ -179,7 +179,7 @@ const statData = ref(null); */ function getPercentLabel(val) { if (Number((val * 100).toFixed(1)) >= 100) return 100; - else return parseFloat((val * 100).toFixed(1)); + else return Number.parseFloat((val * 100).toFixed(1)); } /** Transforms raw stats into display-ready format with localized numbers and time labels. */ diff --git a/src/components/DurationInput.vue b/src/components/DurationInput.vue index 51b0481..5c729df 100644 --- a/src/components/DurationInput.vue +++ b/src/components/DurationInput.vue @@ -196,16 +196,16 @@ function onFocus(event) { */ function onChange(event) { let decoratedInputValue; - if (isNaN(event.target.value)) { + if (Number.isNaN(Number(event.target.value))) { event.target.value = "00"; } else { event.target.value = event.target.value.toString(); } decoratedInputValue = event.target.value.toString(); - const inputValue = parseInt(event.target.value, 10); - const max = parseInt(event.target.dataset.max, 10); - const min = parseInt(event.target.dataset.min, 10); + const inputValue = Number.parseInt(event.target.value, 10); + const max = Number.parseInt(event.target.dataset.max, 10); + const min = Number.parseInt(event.target.dataset.min, 10); if (inputValue > max) { decoratedInputValue = max.toString().padStart(2, "0"); } else if (inputValue < min) { @@ -266,8 +266,8 @@ function actionUpDown(input, goUp, selectIt = false) { } function getNewValue(input) { - const newVal = parseInt(input.value, 10); - return isNaN(newVal) ? 0 : newVal; + const newVal = Number.parseInt(input.value, 10); + return Number.isNaN(newVal) ? 0 : newVal; } function handleArrowUp(newVal, tUnit, input) { @@ -294,7 +294,7 @@ function handleArrowDown(newVal, tUnit) { function incrementPreviousUnit(input) { if (input.dataset.index > 0) { const prevUnit = document.querySelector( - `input[data-index="${parseInt(input.dataset.index, 10) - 1}"]`, + `input[data-index="${Number.parseInt(input.dataset.index, 10) - 1}"]`, ); if (prevUnit) actionUpDown(prevUnit, true); } @@ -324,8 +324,8 @@ function updateInputValue(input, newVal, tUnit) { * @param {string} [size] - 'max' or 'min' to set boundary days. */ function secondToDate(totalSec, size) { - totalSec = parseInt(totalSec, 10); - if (!isNaN(totalSec)) { + totalSec = Number.parseInt(totalSec, 10); + if (!Number.isNaN(totalSec)) { seconds.value = totalSec % 60; minutes.value = (Math.floor(totalSec - seconds.value) / 60) % 60; hours.value = Math.floor(totalSec / 3600) % 24; @@ -344,8 +344,8 @@ function calculateTotalSeconds() { let total = 0; for (const unit in tUnits.value) { - const val = parseInt(tUnits.value[unit].val, 10); - if (!isNaN(val)) { + const val = Number.parseInt(tUnits.value[unit].val, 10); + if (!Number.isNaN(val)) { total += val * tUnits.value[unit].rate; } } diff --git a/src/module/abbreviateNumber.js b/src/module/abbreviateNumber.js index 20e1a6c..e857175 100644 --- a/src/module/abbreviateNumber.js +++ b/src/module/abbreviateNumber.js @@ -22,8 +22,8 @@ export default function abbreviateNumber(totalSeconds) { let result = ""; let symbols = ["d", "h", "m", "s"]; - totalSeconds = parseInt(totalSeconds); - if (!isNaN(totalSeconds)) { + totalSeconds = Number.parseInt(totalSeconds); + if (!Number.isNaN(totalSeconds)) { seconds = totalSeconds % 60; minutes = (Math.floor(totalSeconds - seconds) / 60) % 60; hours = Math.floor(totalSeconds / 3600) % 24; diff --git a/src/module/setChartData.js b/src/module/setChartData.js index 23054c6..23068d7 100644 --- a/src/module/setChartData.js +++ b/src/module/setChartData.js @@ -231,7 +231,7 @@ export function getXIndex(data, xValue) { * or null if the input is NaN. */ export function formatTime(seconds) { - if (!isNaN(seconds)) { + if (!Number.isNaN(Number(seconds))) { const remainingSeconds = seconds % 60; const minutes = (Math.floor(seconds - remainingSeconds) / 60) % 60; const hours = Math.floor(seconds / 3600) % 24; diff --git a/src/module/sortNumEngZhtw.js b/src/module/sortNumEngZhtw.js index 34e8b54..3824496 100644 --- a/src/module/sortNumEngZhtw.js +++ b/src/module/sortNumEngZhtw.js @@ -17,10 +17,10 @@ */ export function sortNumEngZhtw(data) { return data.sort((a, b) => { - const isANumber = !isNaN(parseFloat(a)) && isFinite(a); - const isBNumber = !isNaN(parseFloat(b)) && isFinite(b); + const isANumber = !Number.isNaN(Number.parseFloat(a)) && Number.isFinite(Number(a)); + const isBNumber = !Number.isNaN(Number.parseFloat(b)) && Number.isFinite(Number(b)); - if (isANumber && isBNumber) return parseFloat(a) - parseFloat(b); + if (isANumber && isBNumber) return Number.parseFloat(a) - Number.parseFloat(b); if (isANumber) return -1; if (isBNumber) return 1; @@ -40,10 +40,10 @@ export function sortNumEngZhtw(data) { * @returns {number} Negative if a < b, positive if a > b, zero if equal. */ export function sortNumEngZhtwForFilter(a, b) { - const isANumber = !isNaN(parseFloat(a)) && isFinite(a); - const isBNumber = !isNaN(parseFloat(b)) && isFinite(b); + const isANumber = !Number.isNaN(Number.parseFloat(a)) && Number.isFinite(Number(a)); + const isBNumber = !Number.isNaN(Number.parseFloat(b)) && Number.isFinite(Number(b)); - if (isANumber && isBNumber) return parseFloat(a) - parseFloat(b); + if (isANumber && isBNumber) return Number.parseFloat(a) - Number.parseFloat(b); if (isANumber) return -1; if (isBNumber) return 1;