添加到数组间隔的Javascript

添加到数组间隔的Javascript,javascript,Javascript,假设我有一个数组var x=[1,2,3,4],我想在数组的第二个和第三个元素中添加1。在pythonnumpy中,我可以做x[1:3]+=1来添加x的第1到第3个(不包括第3个)元素的间隔。JavaScript中有类似的方法吗?您可以使用带有闭包的函数 const map=(开始,结束,fn)=>(v,i)=>i>=开始和i v+1); 控制台日志(结果)在这方面很难打败python,但golang呢?下面是一个快速POC: function\u-toInt(s,def=null){ 试一

假设我有一个数组
var x=[1,2,3,4]
,我想在数组的第二个和第三个元素中添加1。在pythonnumpy中,我可以做
x[1:3]+=1
来添加x的第1到第3个(不包括第3个)元素的间隔。JavaScript中有类似的方法吗?

您可以使用带有闭包的函数

const
map=(开始,结束,fn)=>(v,i)=>i>=开始和i v+1);

控制台日志(结果)在这方面很难打败python,但golang呢?下面是一个快速POC:

function\u-toInt(s,def=null){
试一试{
设n=个数;
返回编号。isInteger(n)?n:def;
}抓住{
返回def;
}
}
类片{
构造函数(ary,idx){
this.ary=ary;
设ii=idx.split(“:”);
this.start=\u toInt(ii[0],0);
this.end=_toInt(ii[1],元长度);
这个步骤=_toInt(ii[2],1);
}
get(obj,p){
设n=_toInt(p);
如果(n==null)
返回此[p];
设k=this.start+n*this.step;
返回此.ary[k];
}
设置(obj、p、val){
设n=_toInt(p);
如果(n==null)
返回此[p]=val;
设k=this.start+n*this.step;
返回此.ary[k]=val;
}
*[符号.迭代器](){
for(设i=0,k=this.start;k新代理([],新的_Slice(ary,idx));
//
让数组=[0,11,22,33,44,55,66,77,88,99]
let slice=slice(数组“1:8:2”)
for(让[i,u]的切片)
切片[i]*=100;

console.log(array)
那么
1
将是第二个元素,而
3
将是第三个元素?没有这样的方法是JavaScript。如果要避免传统的for loopNo,可以尝试在数组上映射。您需要为
循环使用
。您可以尝试此
x=x.map((v,i)=>(i>=1&&i<3?v+1:v))
[2,3].forEach((v)=>(x[v-1]+=1))其中[2,3]是给定数组中的第二个和第三个元素。。。。什么是爱…?@NinaScholz:的确如此)