为了账号安全,请及时绑定邮箱和手机立即绑定

Javascript中的函数重载-最佳实践

Javascript中的函数重载-最佳实践

慕婉清6462132 2019-06-26 15:03:35
Javascript中的函数重载-最佳实践在Javascript中伪造函数重载的最佳方法是什么?我知道在Javascript中不可能像在其他语言中那样重载函数。如果我需要有两个用途的函数foo(x)和foo(x,y,z)哪一种是最好的/首选的方式:首先使用不同的名字使用可选参数,如y = y || 'default'使用参数数检查参数类型或者怎么做?
查看完整描述

3 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

使用参数进行函数重载的最佳方法是不检查参数长度或类型;检查类型只会使代码变慢,并且您可以享受数组、空值、对象等的乐趣。

大多数开发人员所做的就是将对象作为其方法的最后一个参数。这个物体可以容纳任何东西。

function foo(a, b, opts) {
  // ...
  if (opts['test']) { } //if test param exists, do something.. }foo(1, 2, {"method":"add"});foo(3, 4, {"test":"equals", "bar":"tree"});

然后你可以在你的方法中任意处理它。[开关,如果-其他,等]


查看完整回答
反对 回复 2019-06-26
?
杨魅力

TA贡献1811条经验 获得超5个赞

JavaScript中没有真正的函数重载,因为它允许传递任何类型的任意数量的参数。你必须检查函数里面有多少论点已经通过了,它们是什么类型的。


查看完整回答
反对 回复 2019-06-26
  • 3 回答
  • 0 关注
  • 332 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信