typescript设置默认值_TypeScript输入参数的默认值一例,以及对应生成的JavaScript代码分析...

本文深入探讨了TypeScript中constfun函数的定义和工作原理,详细解释了参数默认值的设定及变量赋值的过程。通过注释,使得代码更易理解,展示了如何将TypeScript编译为JavaScript,并分析了编译后的代码可读性。
摘要由CSDN通过智能技术生成

const fun = ({ aa = 1, bb = 0 } = {}) => {

console.log('aa: ' + aa);

console.log('bb: ' + bb);

return 'hello';

}

document.body.innerHTML = fun();

使用tsc进行编译:

77a8a4e5b4fd

生成的JavaScript代码:

var fun = function (_a) {

var _b = _a === void 0 ? {} : _a, _c = _b.aa, aa = _c === void 0 ? 1 : _c, _d = _b.bb, bb = _d === void 0 ? 0 : _d;

console.log('aa: ' + aa);

console.log('bb: ' + bb);

return 'hello';

};

document.body.innerHTML = fun();

可读性一般,Jerry加了一些注释:

var fun = function (_a) {

// 输入参数_a是否为undefined?如果是,赋上默认值{}, 一个空对象。如果不为空,

// 用临时变量_b 存储输入变量_a的值

// 现在_b和_a等价。

var _b = _a === void 0 ? {} : _a;

// _c存储输入变量的aa字段

var _c = _b.aa;

// 输入变量的aa字段为undefined吗?如果是,则将默认值1赋给临时变量aa, 否则使用变量传进来的aa字段的值

var aa = _c === void 0 ? 1 : _c;

// _d存储输入变量的bb字段

var _d = _b.bb;

// 输入字段的bb为undefined吗?如果是,使用默认值0,否则,使用输入变量的bb字段的实际值

var bb = _d === void 0 ? 0 : _d;

console.log('aa: ' + aa);

console.log('bb: ' + bb);

return 'hello';

};

document.body.innerHTML = fun();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值