为什么可以't direcrlty通过在javascript中使用.push()返回一个值
Why can't direcrlty return a value by using .push() in javascript?
以下面的flatten函数为例,为什么我不能直接在累加器上使用return
。Push()
function flatten(array){
return reduce(array,function(accumulator, value){
if(Array.isArray(value)){
each(value,function(value1){
return accumulator.push(value1); //as shown
})
}else{
return accumulator.push(value); //as shown
}
},[]);
};
相反,我需要在单独的线路上返回累加器?
function flatten(array){
return reduce(array,function(accumulator, value){
if(Array.isArray(value)){
each(value,function(value1){
accumulator.push(value1);
})
}else{
accumulator.push(value);
}
return accumulator //as shown
},[]);
};
但是如果使用像.contat()这样的方法,我将能够在它上使用return
…
push
方法返回数组的新长度。
推送的MDN文档
concat
方法返回一个全新的数组,该数组包含两个数组的组合。
concat 的MDN文档
如果你想要一个有点"奇怪"的解决方案,意味着你可以在同一行返回,你可以这样做:return (accumulator.push(value1) + 1) && accumulator;
+1是为了确保0的索引为真。
就像我难过的一样,它允许您返回您想要的行,但带有奇怪的代码。也许适合你的情况?
但您想要使用的似乎是concat
相关文章:
- 节点导出返回一个空对象
- ES6构造函数返回基类的实例
- 监视函数从服务返回不起作用,但作用域函数起作用
- 控制台返回var不是't定义,但它是
- 从函数返回角度承诺
- Javascript返回值只在循环中返回一次
- 从控制器返回后Ajax启动事件激发
- CKFinder 3为所选文件返回错误的URL
- dataLayer.push() 返回值含义
- 带有jquery .push的Javascript全局数组在备用函数中返回空数组
- .push() 多个对象进入 JavaScript 数组返回 'undefined'
- Angular array.push() 返回空对象
- 为什么可以't direcrlty通过在javascript中使用.push()返回一个值
- jQuery push()返回错误“”;undefined不是函数”;
- javascript内部的push方法.每个循环只返回一个数组
- 如何返回最后一个push()嵌入文档
- 替换javascript对象中的字段?对于splice和push, splice的indexOf返回-1值
- Array.push返回推送的值
- angular.js非get实例操作返回error: value.Push不是一个函数
- Ionic Push Android推送通知返回“未定义”;消息