Javascript 成员变为未定义

Javascript 成员变为未定义,javascript,jquery,Javascript,Jquery,我开发了一个jQuery插件,它有默认选项: $.fn.incromentor.defaults = { max : 65355, min : 0 }; 在插件初始化过程中,我使用$将用户选项与插件默认选项合并。extend function init( $elm, options ) { this.$element = $elm; this.options = $.extend( {}, $.fn.incromentor.defaults, options );

我开发了一个jQuery插件,它有默认选项:

$.fn.incromentor.defaults = {
   max : 65355,
   min : 0
};
在插件初始化过程中,我使用
$将用户选项与插件默认选项合并。extend

function init( $elm, options )
{
    this.$element = $elm;
    this.options = $.extend( {}, $.fn.incromentor.defaults, options ); 
}
所以问题是,如果用户将
min
max
设置为
0
,该属性将变为未定义
这是为什么?我如何存储一个简单的0

这里有一个JSFIDLE:

编辑

在JSLint中对代码进行lint后,错误消失了,因此我怀疑键入时有一个模糊的错误。

$.fn.incromentor.defaults={}将覆盖您的默认选项,因此其他一些内容(如多文本、少文本)将变为未定义。用户应将其选项传递到构造函数中,例如

$('#myel').Incrementor({ max : 65355, min : 0});
--


$this to$(this)

无法复制:它甚至可以与jQuery 1.2.6一起使用。您刚才不是输入错误了吗,有效地执行了类似
$.extend({},未定义,options)的操作?嗯,这就是我怀疑的。。。我已经用完整的代码创建了一个JSFIDLE,我在其中放了一个console.log()来说明我的意思:我不完全确定,但是您可能想看看JS Lint按钮(在JS FIDLE中)报告的错误。虽然.JS Lint修复了构造函数中的选项设置,但它们可能什么都没有。还有其他一些逻辑错误也必须修复,但主要错误已经消失了!请参阅更新的anwswer,JSFIDLE似乎已关闭,因此现在无法测试将$.fn.incromentor.defaults设置为{}的位置?