javascript - js怎么快速创建这样一个数组?
ringa_lee
ringa_lee 2017-04-10 18:07:00
[JavaScript讨论组]
            var fs_qsw = [{number:0},{number:1},{number:2},{number:3},{number:4},{number:5},{number:6},{number:7},{number:8},{number:9}];
 现在是手写的,有没有函数生成的办法?       
ringa_lee
ringa_lee

ringa_lee

全部回复(4)
ringa_lee

Array.fill

Array(10).fill('naive').map((v, i) =>{ return {number: i}});

Array.from

Array.from(new Array(10), (v,i) => { return {number: i}});

递归

(function wallace (i) { return (i < 0) ? [] : wallace(i - 1).concat({number: i}); })(10);

尾递归

(function mistake (i, acc) { return (i < 10) ? mistake(i + 1, acc.concat({number: i})) : acc; })(0, []);

Generator

function* angry(i) {
  yield {number: i};
  if (i < 10) { yield* angry(i + 1); }
};
Array.from(angry(0));

apply方式

Array.apply(null, { length: 10 }).map((v, i) => i);
PHP中文网
function func(length) {
    var arr = [];
    for (var i = 0; i < length; i++) {
        arr.push({
            number: i
        });
    }
    return arr;
}
怪我咯

直接循环不行?

var arr=[];
for(var i=0;i<10;i++){
    arr.push({name:i})
}
高洛峰
function createArr(count){
    var arr = [];
    for (var i = 0; i < count; i++) {
        var temp = {number:i};
        arr.push(temp);
    }
    return arr
}

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号