formatDate还可以再封装一下

来源:17-9 其它知识点-代码演示

小董君同学

2017-07-07

function formatDate(dt) {
        if (!dt) {
            dt = new Date();
        }
        var year = dt.getFullYear();
        var month = dt.getMonth() + 1;
        var date = dt.getDate();

        // if (month < 10) {
        //     month = '0' + month;
        // }

        // if (date < 10) {
        //     date = '0' + date;
        // }

        return year + '-' + addZero(month) + '-' + addZero(date);
    }

    function addZero(num) {
        if (num < 10) {
            num = '0' + num;
        }
        return num;
    }


    var dt = new Date();
    document.write(formatDate(dt));

这样以后时分妙还能继续用,不用把if(x<10)写好几遍

写回答

1回答

双越

2017-07-07

这样做也可以。

但是,这样就平白无故的多出了一个 addZero 的函数,暴露在外面变量越多,复杂度就越高,所以不要拆的过散。

另外,如果真的实战中,建议使用 moment.js

0
1
小董君同学
嗯,我考虑太少了,没想到这一层
2017-07-07
共1条回复

BAT大牛带你横扫初级前端JavaScript面试(第二版)

BAT高级前端工程师亲授,结合真实面试题,提高面试成功几率

4268 学习 · 817 问题

查看课程