创建 JavaScript 没有第一个参数的选项

Create JavaScript without the option for first parameter

我正在尝试为 jQuery 创建一个不接受起始参数的插件。我一直在寻找不同类型的教程,但找不到。我想要实现的是:

$.myCode({username: 'Whosebug'});

我找到的所有教程都要求您使用第一个参数,例如:

$('.my-element').myCode({username: 'Whosebug'});

有人知道如何实现我的目标吗?

您正在正确附加方法以实现您想要实现的目标。例如:

(function($){
  var options = {};
  
  $.whoIsDis = function () {
    if (typeof arguments[0] === 'string') {
      if (arguments[0] === 'iam') {
        options.username = arguments[1].username;
        console.log(`Hello ${options.username}.`);
      } else if (arguments[0] === 'whoareyou') {
        if (!options.username) {
          console.log('I...I don\'t know who I is...');
        } else {
          console.log(`I is ${options.username}!!!`);
        }
      }
    }
    
    return $;
  };
}(jQuery));

$.whoIsDis('whoareyou')
 .whoIsDis('iam', {username: 'Jimmy'})
 .whoIsDis('whoareyou');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

虚拟的小例子,但这里的要点是,如果您不需要已经选择的元素来让您的插件工作,您可以将它附加到 jQuery 命名空间。如果您希望它仅在您之前选择了元素时才可用,则只需将其附加到 jQuery.fn