访问两个输入以在$ {}中使用

时间:2017-01-27 18:25:38

标签: javascript

我有一个需要3个输入的函数:

let logger = (title, date, type) => {
    switch(type) {
        case 'start' || 'end':
            console.log(`${title} loop ${type} time:  ${date.type}`);
            break;
    }
};


var startTime = new Date();
var endTime = new Date();
logger('tester', {start: startTime, end: endTime}, 'start');

我想在不使用新变量的情况下这样做。 正如你所看到我试图从我传入的对象获取属性,我试图用${}来做这件事,但我遇到了麻烦:

tester loop start: [object Object].start

2 个答案:

答案 0 :(得分:2)

您需要使用括号表示法:

{{1}}

答案 1 :(得分:1)

您可以直接使用括号表示法访问权限

使用括号表示法

let logger = (title, interval, type) => {
    switch (type) {
        case 'start' || 'end':
            console.log(`${title} loop ${type} time:  ${interval[type]}`);
            break;
    }
};

使用直接访问属性

let logger = (title, interval, type) => {
    switch (type) {
        case 'start' || 'end':
            console.log(`${title} loop ${type} time:  ${interval.start}`);
            break;
    }
};

示例:

logger('tester', {start: new Date(), end: new Date()}, 'start');