我想知道如何创建 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/