Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript/jQuery速记函数定义_Javascript_Jquery_Notation - Fatal编程技术网

JavaScript/jQuery速记函数定义

JavaScript/jQuery速记函数定义,javascript,jquery,notation,Javascript,Jquery,Notation,我使用的jQuery插件的功能定义如下: $('#mydiv').pluginAction({ someproperty: val, format: 'mm hh', labels: ['yes', 'no', 'maybe'], labels1: ['never', 'always'] }); 在我的HTML页面中,我有多个div,它们的格式、标签、标签1的属性相同,但某些属性的值不同。我是否可以利用某种类型

我使用的jQuery插件的功能定义如下:

    $('#mydiv').pluginAction({
        someproperty: val, 
        format: 'mm hh',
        labels: ['yes', 'no', 'maybe'], 
        labels1: ['never', 'always']
    });

在我的HTML页面中,我有多个div,它们的
格式
标签
标签1
的属性相同,但
某些属性的值不同。我是否可以利用某种类型的JavaScript符号来缩短定义,这样就不必有重复的代码?

有几种方法可以解决这个问题:

  • 创建一个填补空白的函数;或

  • 如果插件是您的,则将这些值默认为您想要的值

  • (1)的示例:


    Cletus有一个非常好的答案,它允许您生成非常可读的代码。这可能是您的最佳解决方案

    为了记录在案,类似于以下内容也是可能的。您可以创建一个存储所有固定属性的对象文本,然后在需要时通过使用指定add额外属性(例如示例中的
    someProperty


    复制那种代码没有什么错。它实际上清楚地表明了什么样的行为适用于给定的div。但是,如果你说的是成百上千的重复,请使用其他人的建议。

    一些插件允许你发送一个对象文本来替换插件的默认值。您可以将其用于不改变的值。
    function props(val) {
      return {
        someproperty: val,
        format: 'mm hh',
        labels: ['yes', 'no', 'maybe'], 
        labels1: ['never', 'always']
      };
    }
    
    $("#mydiv").pluginAction(props("..."));
    
    var props = {
     format: 'mm hh',
     labels: ['yes', 'no', 'maybe'], 
     labels1: ['never', 'always']
    };
    
    $('#mydiv').pluginAction($.extend(props, { someProperty: val }));