如何使用js原生方法在数组尾部插入数据,返回原数组

let arr = [1,2,3]

// 想要实现的效果(能在数组尾部插入数据的同时返回原数组,原生方法):
JSON.stringify(arr.xxx(4)) // => '[1,2,3,4]'

// push和splice都不行
JSON.stringify(arr.push(4)) // => '4'
JSON.stringify(arr.splice(arr.length,0,4)) // => '[]'

// 注:不考虑concat

有无大神知道怎么样做

阅读 2.7k
3 个回答

表达式后面用 , 再紧跟一个原数组就行:

JSON.stringify((arr.push(4), arr));  // '[1,2,3,4]'

或者使用逻辑运算符:

JSON.stringify(arr.push(4) && arr);  // '[1,2,3,4]'

不过总感觉怪怪的,只能写一句代码?

木有:)
下面这个方法返回新数组

var  arr = [1,2,3];
var _arr_ = arr.concat([4]);
console.log(_arr_===arr);//false

[...[1,2,3],4]

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题