jquery - 对于 jQuery 纯粹主义者 - 简单的数组填充?

标签 jquery arrays each

为了我自己的教育,我仍然希望看到像这样的构造的优雅 jQuery 版本 - 请注意图像文件名是基于 1 而不是基于 0 :

var nofImages = 10; // user defined
var slideShowArray = new Array(nofImages); // cannot use [nofImages] of course
for (var i=0, n=slideShowArray.length;i<n;i++) {
  slideShowArray[i]="/images/image"+(i+1)+".jpg";
}

或者根据上面提到的文章也许应该是

var nofImages = 10; // user defined
var slideShowArray = [];
for (i=nofImages;i>0;i--) {
  slideShowArray[(i-1)]="/images/image"+i+".jpg";
}

谢谢

最佳答案

var slideShowArray = $.map(new Array(10), function(i,j) {
    return '/images/image'+(j+1)+'.jpg';
});

在 Javascript 1.8 中,您将能够更优雅地做到这一点:

var slideShowArray = $.map(new Array(10), function(i,j) '/images/image'+(j+1)+'.jpg');

甚至

$.range = function(first,last,step) {
    step = step || 1;
    if (typeof last == undefined) {
        last = first;
        first = 0;
    }
    return $.map(Array((first-last)/step), function(i,j) {
        return j*step + first;
    });
}

var slideShowArray = ['/images/image'+i+'.jpg' for (i in $.range(1,10))];

关于jquery - 对于 jQuery 纯粹主义者 - 简单的数组填充?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4447611/

相关文章:

jquery - 删除组内元素的类以进行同位素过滤

javascript - jQuery 如何循环遍历所有元素

jquery - 同时ajax请求angularjs?

javascript - 如何根据文本的长度自动调整固定DIV中的文本大小?

数组属性的 JavaScript getter 方法

javascript - 使用 Javascript/JQuery 访问从外部 XML 文件构建的数组

python - 按多列对 numpy 二维数组进行排序

javascript - 从 json 中查找元素

jQuery 悬停变得困惑

javascript - 需要帮助在 JavaScript 中编写自定义过滤器函数