不使用loop生成一个长度n=100,每一项的数据类型为Number,值等于其下标的数组arry。
Posted 我不是金灿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不使用loop生成一个长度n=100,每一项的数据类型为Number,值等于其下标的数组arry。相关的知识,希望对你有一定的参考价值。
这两天在群里看到一组uc国际的面试题,趁有空,也过了一遍,题目如下:
简单做了一下,暂时实现方法如下:
①setTimeout计时器
var i = 0,k = [],j;
function count(){
if(i > 100){
clearInterval(j);
console.log(k);
}else{
k[i] = i++;
}
}
j = setInterval(function(){
count();
},20);
②递归
var rr = []; function sum(n){ if(n < 100){ rr[n+1] = n + 1; return sum(n+1); } } sum(0); console.log(rr);
③map+join
var newArr = new Array(100),i = 0; var dd = newArr.join().split(\',\'); dd.map(function(item){ if(i < 100){ newArr[i] = i++; } }); console.log(newArr);
//④Array.apply(null,{length: 100})
var newArr = Array.apply(null,{length: 100}),i = 0; newArr.map(function(item,i){ if(i < 100){ newArr[i] = i++; } }); console.log(newArr);
暂时想到这么点,后面想到一个加一个咯。
以上是关于不使用loop生成一个长度n=100,每一项的数据类型为Number,值等于其下标的数组arry。的主要内容,如果未能解决你的问题,请参考以下文章