How to reference a key from the same object when creating it?

前端 未结 5 1856
谎友^
谎友^ 2021-01-19 15:26

Say I have an object such as this:

var time = {
    \'second\': 1000,
    \'minute\': 1000 * 60,
    \'hour\'  : 1000 * 60 * 60,
    \'day\'   : 1000 * 60 *          


        
5条回答
  •  广开言路
    2021-01-19 16:00

    var time = (function(){
        var second = 1000,
            minute = second * 60,
            hour = minute * 60,
            day = hour * 24,
            week = day * 7;
        return {
            'second': second,
            'minute': minute,
            'hour'  : hour,
            'day'   : day,
            'week'  : week
        };
    })();
    

    UPD

    Even shorter:

    var time = (function(){
        var w, d, h, m, s;
        w = (d = (h = (m = (s = 1000) * 60) * 60) * 24) * 7;
        return {
            second: s,
            minute: m,
            hour  : h,
            day   : d,
            week  : w
        };
    })();
    

    And finally the minified version of this:

    var time=function(){var a,b,c,d,e;a=(b=(c=(d=(e=1e3)*60)*60)*24)*7;return{second:e,minute:d,hour:c,day:b,week:a}}()
    

提交回复
热议问题