我有一个传递给我的数组,类似于
var arr = ["A", "B", "C"];
我想要实现的只是获取第一个和最后一个值,因此它应该看起来像
var arr = ["A", "C"];
我不是如何使用splice
实现此目的,因为当我这样做时
arr.splice(I am not sure what numbers to put here).forEach(function (element) {
console.log(element);
});
有人可以告诉我如何实现这一目标。
答案 0 :(得分:5)
我想要实现的只是获得第一个和最后一个值 它应该看起来像
简单地
arr.splice( 1, arr.length - 2 );
<强>演示强>
var arr = ["A", "B", "C"];
arr.splice(1, arr.length - 2);
console.log(arr);
答案 1 :(得分:1)
对于您知道的第一个元素arr[0]
对于最后一个元素arr[arr.length -1]
所以let newAr = [arr[0], arr[arr.length -1]]
答案 2 :(得分:1)
考虑到你试图获取数组的第一个和最后一个值之间的值,你需要传递splice一些值,表明你的数组包含多少元素。
这就是为什么你应该考虑使用:
var arr = ["A", "B", "C"];
arr.splice(1, arr.length - 2);
<强>解释强>
Splice至少需要2个变量(只有当你使用splice来移除项目时才会这样),第一个是你想要开始删除项目的字符串的位置,第二个是你真正想要的项目数量除去。
要用文字翻译这个简单的行,它说 在数组的第一个元素之后,删除下一个X项,其中X是数组的长度减去第一个和最后一个元素(这就是为什么你有&#34; -2&#34;)。
希望我能正确解释,
欢呼声
答案 3 :(得分:0)
你可以做到
var arr = ["A", "B", "C"];
console.log(arr.filter((e, i) => i==0 || i==arr.length-1));
答案 4 :(得分:0)
请尝试遵循 ES6 方式
let array = ["A", "B", "C"]
let {0 : a ,[array.length - 1] : b} = array;
console.log(a, b)