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

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

在Javascript中伪造函数重载的最佳方法是什么?

我知道在Javascript中不可能像在其他语言中那样重载函数。如果我需要有两个用途的函数foo(x)foo(x,y,z)哪一种是最好的/首选的方式:

  1. 首先使用不同的名字
  2. 使用可选参数,如

    y = y || 'default'

  3. 使用参数数
  4. 检查参数类型
  5. 或者怎么做?


慕婉清6462132
浏览 379回答 3
3回答

幕布斯7119047

使用参数进行函数重载的最佳方法是不检查参数长度或类型;检查类型只会使代码变慢,并且您可以享受数组、空值、对象等的乐趣。大多数开发人员所做的就是将对象作为其方法的最后一个参数。这个物体可以容纳任何东西。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"});然后你可以在你的方法中任意处理它。[开关,如果-其他,等]

杨魅力

JavaScript中没有真正的函数重载,因为它允许传递任何类型的任意数量的参数。你必须检查函数里面有多少论点已经通过了,它们是什么类型的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript