Jquery检查变量是否未定义错误脚本IE10中的5007

Jquery检查变量是否未定义错误脚本IE10中的5007,jquery,internet-explorer,Jquery,Internet Explorer,我使用dataset以这种方式从td单元获取参数 var cellsParams = {}; $(this).find('td').each(function(i) { cellsParams[i] = this.dataset; }); 我试图检查params align的位置是否未定义 $.each(cellsParams, function(n, params) { var cssClass = params.align !== undefined ? 'class=\"

我使用dataset以这种方式从td单元获取参数

var cellsParams = {};
$(this).find('td').each(function(i) {
    cellsParams[i] = this.dataset;
});
我试图检查params align的位置是否未定义

$.each(cellsParams, function(n, params) {
    var cssClass = params.align !== undefined ? 'class=\"' + params.align + '\"' : '';

});
firefox和chrome都能很好地工作,但在IE 10上我有这个错误。 SCRIPT5007:无法获取属性“align”:对象为null或未定义

$.each(cellsParams, function(n, params) {
    var cssClass = params.align !== undefined ? 'class=\"' + params.align + '\"' : '';

});

我怎样才能解决这个问题?谢谢

如果将cellsParams作为数组而不是对象使用,那么会发生什么情况?因为您将其用作数组,而每个数组可能不会返回您想要的对象?也就是说,将其初始化为var cellsParams=[]@PaulRoub-不幸的是,也出现了同样的错误,我认为问题在于IE在我的对象末尾需要一个逗号。我如何添加它?谢谢,我不知道你的意思。一个对象怎么会有逗号呢?除非你运行的是IE 11或更高版本。所以params总是未定义的,当您第一次引用params.align时,您得到的正是我所期望的错误。