Javascript 如何将一个单位数整数数组转换为2位数或更多
假设我有一个单位数整数数组Javascript 如何将一个单位数整数数组转换为2位数或更多,javascript,arrays,Javascript,Arrays,假设我有一个单位数整数数组 [1,0,2,3,6,7,9,8] 我如何将它们转换成一个数组,比如说,2位整数 像这样: [10, 23, 67, 98] 您可以使用Array.from()创建一个具有原始数组长度的新数组。length/块大小(在本例中为2)。使用Array.slice()提取每个块,连接并转换回数字: const chunkAndJoin=(chunkSize,arr)=> from({length:Math.ceil(arr.length/chunkSize)},(\u
[1,0,2,3,6,7,9,8]
我如何将它们转换成一个数组,比如说,2位整数
像这样:
[10, 23, 67, 98]
您可以使用
Array.from()
创建一个具有原始数组长度的新数组。length/块大小(在本例中为2)。使用Array.slice()
提取每个块,连接并转换回数字:
const chunkAndJoin=(chunkSize,arr)=>
from({length:Math.ceil(arr.length/chunkSize)},(\ux,i)=>
编号(arr.slice(i*chunkSize,(i+1)*chunkSize.join(“”))
)
常数arr=[1,0,2,3,6,7,9,8]
const result=chunkAndJoin(2,arr)
console.log(result)
您可以通过使用迭代索引将Array.prototype.reduce()
和concat数字用作字符串:
const initial = [1,0,2,3,6,7,9,8];
const nextArr = initial.reduce((acc, value, index) => {
if (index % 2 !== 0) return acc;
acc.push(Number(String(value) + String(initial[index + 1])));
return acc;
}, []);
console.log(nextArr);
您可以通过检查累积数组中的最后一项是否小于10(然后应该追加该项),使用,否则,您可以将其添加到数组中
见下例:
const arr=[1,0,2,3,6,7,9,8];
常数res=arr.reduce((acc,n)=>{
let last=附件长度-1;
如果(根据[上一次]<10){
acc[last]=acc[last]*10+n;
}否则{
acc.push(n);
}
返回acc;
}, []);
控制台日志(res)代码>您可以减少数组并将第n个值作为索引
这种方法适用于分组数字的每个计数
const
组=(数组,数字)=>array.reduce((r,v,i)=>{
var j=数学楼层(i/位);
r[j]=(r[j]| | 0)*10+v;
返回r;
}, [])
log(组([1,0,2,3,6,7,9,8,2]);
log(组([1,0,2,3,6,7,9,8,9,3]);
log(组([1,0,2,3,6,7,9,8,4])代码>
.as控制台包装{max height:100%!important;top:0;}
我不知道javascript:D,但类似这样的东西
var a = [1,0,2,3,6,7,9,8];
var b = [];
var length = a.length%2 == 0 ? a.length : a.length -1;
for(var i = 0,j=0; i < length; i++,j++){
b[j] = a[i] + "" + a[++i];
}
var a=[1,0,2,3,6,7,9,8];
var b=[];
变量长度=a。长度%2==0?a、 长度:a.长度-1;
对于(变量i=0,j=0;i
另外,如果您的阵列长度为%2!=0,则此代码将跳过最后一个元素)您可以使用normal for循环,并将i
增加2
&乘以10
let array=[1,0,2,3,6,7,9,8]
设finalArray=[];
for(设i=0;i console.log(finalArray)
到目前为止您尝试了什么?本周我刚开始学习javascript,所以这是最容易理解的,谢谢!