【发布时间】:2011-09-11 04:41:22
【问题描述】:
您好,我正在构建一个插件,不幸的是它有 146 个选项...
合并(减少)选项的最佳方法是什么。
对不起,我的英语不好。
例子:
假设我们想为两个不同的元素应用不同的颜色。
普通默认选项:
elemColor1:'black',
elemColor2:'red',
并像这样使用它们:
elem1.css('color',options.elemColor1);
elem1.css('color',options.elemColor2);
还是作为数组?
elemColor:['black','red'],
并像这样使用它们:
elem1.css('color',options.elemColor[0]);
elem2.css('color',options.elemColor[1]);
还是作为对象?
elemColor:{color1:'black',color2:'red'},
并像这样使用它们:
elem1.css('color',options.elemColor.color1);
elem2.css('color',options.elemColor.color2);
如果作为数组或对象传递,我们会遇到问题,如果我们设置其他参数而不是默认参数,我们会忘记 elemColor 的第二个参数。
elemColor:['green'],
则 jquery 插件无法读取默认的第二个值(红色)。
哪个更好(性能、较小的文件大小等)?
还有其他办法吗???
【问题讨论】:
标签: jquery arrays object merge options