1. 程式人生 > 實用技巧 >js分鐘轉化為小時並且以某個數字進行遞增

js分鐘轉化為小時並且以某個數字進行遞增

有些時候,我們需要將分鐘轉為小時;
並且還有以一個數字進行遞增;
呈現出【3,6,9,12,15,18】這樣的遞增形式
// 因為是遞增,所以是相加;
// 在使用+號的時候;
// 注意兩邊都是數字哈~
// toFixed(1);保留一位小數,並且結果是四捨五入的形式
// 2.355.toFixed(1)=2.4      2.315.toFixed(1)=2.3
let min = 30;
let arr = []
for (let i = 0; i < 60; i++) {
    if (arr.length == 0) {
        arr.push(Number(min))
    } else {
        arr.push(Number(arr[i - 1]) + Number(min))
    }
}
for (let k = 0; k < 60; k++) {
    // js中小數相加,都可能出現精度丟失哈~
    // console.log(0.4 + 0.2);// 0.6000000000000001(意外不)
    arr[k] = (arr[k] / 60).toFixed(1);
}
console.log(arr);
       

在js中,只要是小數相加,將小數變為整除,然後在除以之前擴大的倍數;
這樣做是為了防止精度丟失;
console.log(0.4 + 0.2);// 0.6000000000000001(意外不)
console.log(0.1 + 0.2); //驚喜不 意外不 0.30000000000000004
let min = 30;
// 保留一位小數,同時會四捨五入
// 兩個數字相除,得到的結果不一定是數字;可能是字串;
// 比如下面的相除
let hover = Number((10 / 60).toFixed(1));
let arr = []
for (let i = 0; i < 60; i++) {
    if (arr.length == 0) {
        arr.push(hover)
    } else {
        arr.push(Number(arr[i - 1]) + Number(hover))
    }
}
console.log(arr);