我似乎有正确的语法,但我一直得到一个NaN值,我相信它与数组的传播有关,请你查一下代码,看看我哪里出错了。
var _array = new Array();
var _first = 1;
var _second = 4;
$('#con > div').each(function(index){
var _data = $(this).css('left').split('px')[0];
var _class = $(this).attr('class').split(' ')[0];
_array[_first] = [_data];
//_array[_second] = _class;
_first++;
_second++;
if(index == 2){
_first = 1;
_second = 4;
for(var i = 0; i < _array.length; i++)
console.log(_array[i]);
var large = Math.max.apply(Math, _array);
console.log(large);
}
});
由于
答案 0 :(得分:2)
所以,我稍微修改了一下 - http://jsfiddle.net/LTMbr/4/并且你的_array [0]未定义。这就是为什么你对Math.max
的回复正在返回NaN。
答案 1 :(得分:2)
问题是您从索引1开始填充数组。If any of the arguments to Math.max cannot be converted to a number, NaN is returned
这是因为_array[0]
未定义