javascript - 创建jquery函数

标签 javascript jquery function

我想知道如何创建 jquery 函数,然后我可以使用其中声明的参数名称和值来调用该函数。

不要像这样提供正确的顺序变量来运行:

myFunction("My function name",true,false);

我想给函数提供类似的东西:

function({
  displayName: "My function name",
  editable: true,
  displayForm: false;
})

其中参数的顺序并不重要,因为我按其名称给出它。

我在每个 jquery 库(jqPlot、JqGrid、noty 等)中都看到了该配置 这是示例:

$(document).ready(function(){
  var plot1 = $.jqplot('chart1', [cosPoints], {  
      series:[{showMarker:false}],
      axes:{
        xaxis:{
          label:'Angle (radians)'
        },
        yaxis:{
          label:'Cosine'
        }
      }
  });
});

--已编辑--

我有自己的js函数来从json打印树,但是我有太多参数,很难阅读和编辑。

最佳答案

您没有理由不能执行您所要求的操作,只需让您的函数需要一个对象文字即可:

function MyFunction(o){
    // Do whatever you need to do with your object properties,
    // like set some corresponding scoped variables.
    // 0 would be their default values, change as appropriate.
    var displayName = o.displayName || 0,
        editable = o.editable || 0,
        displayForm = o.displayForm || 0;
}

然后按照您想要的方式命名它:

myFunction({
    displayName: "My function name",
    editable: true,
    displayForm: false;
});

郑重声明,这里没有 jQuery 功能。这都是普通的 JavaScript。

<小时/>

请注意,如果您使用 jQuery,则可以在继续执行功能之前检查该参数实际上是否为对象文字,使用 $.isPlainObject(o) .

关于javascript - 创建jquery函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27147994/

相关文章:

javascript - 如何在 React 组件的 jsx 中使用三元运算符以及 typescript ?

javascript - CSS 帮助 : Autoplay 6 images in a loop

c - 如何在 c 中的未知类型数组中查找最大元素(使用指向函数的指针)

C: 如何用更新的 GtkWidget 对齐属性替换 GtkAlignment 函数

function - Scala 是否提供了一种在不重复参数列表的情况下实现 "proxy"或 "decorate"函数的方法?

javascript - JSON 文件的 XMLHttpRequest 在 Chrome 中完美运行,但在 Firefox 中不完美

javascript - jquery,将多个值附加到一个隐藏的输入

javascript - Angular onreadystatechange

javascript - jQuery 添加后无法删除 li

javascript - 无需加载页面即可交换内部图库和 HTML