如何使用Typescript处理可选的函数参数?

时间:2014-07-16 08:58:50

标签: javascript typescript

我在Javascript中定义了这样的函数:

 checkButton (elem, expectedPresent, expectedEnabled) {
        var id = elem.locator_.value;
        var title = this.getTitle(id);
        expectedPresent = typeof expectedPresent !== 'undefined' ? expectedPresent : true;
        expectedEnabled = typeof expectedEnabled !== 'undefined' ? expectedEnabled : true;
        var enabledCheck = expectedEnabled ? "enabled" : "disabled";
        it(title + ' - Check it is ' + enabledCheck, function () {
            expect(elem.isPresent()).toBe(expectedPresent);
            expect(elem.isEnabled()).toBe(expectedEnabled);
        });
    }

两个尾随参数是可选的。

现在我正在使用Typescript。有人能告诉我是否有更好的方式来定义 这些可选参数使用Typescript。另外我应该如何设置参数 当params不存在时,Typescript不会在调用此函数时出现语法错误?

1 个答案:

答案 0 :(得分:1)

使用= defaultValue

checkButton (elem, expectedPresent = true , expectedEnabled = true ) {
        var id = elem.locator_.value;
        var title = this.getTitle(id);
        var enabledCheck = expectedEnabled ? "enabled" : "disabled";
        it(title + ' - Check it is ' + enabledCheck, function () {
            expect(elem.isPresent()).toBe(expectedPresent);
            expect(elem.isEnabled()).toBe(expectedEnabled);
        });
    }