Javascript 平均拆分数组

标签 javascript arrays split

我有以下 json:

http://pastebin.com/uxpWk2CY

我需要根据浏览器的宽度将它拆分成多个数组。

这是我的javascript:

    var imageArray = jQuery.parseJSON(data);

    var splitArrayInto = jQuery(document).width() / 300;
    splitArrayInto = Math.floor(splitArrayInto);

    var seperateImageArrays = array_fill(0, splitArrayInto);

    for(var i = 0; i < splitArrayInto; i++){
        seperateImageArrays[i % splitArrayInto][i] = imageArray[i];
    }

当我运行它时,我得到

无法将undefined 转换为对象

seperateImageArrays[i % splitArrayInto][i] = imageArray[i];

感谢任何帮助。

编辑: 忘记添加 array_fill 函数。

//PHP array_fill
function array_fill (start_index, num, mixed_val) {
    var key, tmp_arr = {};

    if (!isNaN(start_index) && !isNaN(num)) {
        for (key = 0; key < num; key++) {
            tmp_arr[(key + start_index)] = mixed_val;
        }
    }

    return tmp_arr;
}

最佳答案

当您调用 array_fill 时,您没有传递第三个参数,因此您所有的数组元素都设置为 undefined ... 和 undefined 不能用 [i] 取消引用。

考虑将 [] 作为第三个参数传递。

关于Javascript 平均拆分数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10870670/

相关文章:

python - 生成 datetime.time 对象数组 python

php - 在最后出现的空格上拆分字符串

javascript - 如何在 JavaScript 中分割这个字符串?

javascript - 从表中添加/删除行

javascript - 使用 AJAX 的 Chrome 通知

javascript - jQuery - 在创建动画加载栏时遇到问题,从左到右缩小

c++ - 为什么有时将 2D 图像建模为指向指针 (T**) 的指针?

c++ - 如何检查通过引用返回的函数的正确操作数?

excel - 解析 CSV,忽略 VBA 中字符串文字内的逗号?

javascript - 创建包含 3 个部分的圆,并在 HTML/css/script 中对每个部分执行操作