首页 > 试题广场 >

[1,2,3,4,5] 的数组的基础上 

[单选题]
[1,2,3,4,5] 的数组的基础上 删除第一个 和 最后一位
  • [1,2,3,4,5].replace(1, -1)
  • [1,2,3,4,5].reverse(1,-1)
  • [1,2,3,4,5].toString(-1,1)
  • [1,2,3,4,5].slice(1, -1)
slice(1,-1)   slice不会操作原数组,会返回一个新数组 。 表示从索引为0开始截取,-1表示截取到倒数第二个,并将这个新数组返回。
发表于 2019-11-30 20:04:31 回复(0)

应该是splice

发表于 2019-11-30 00:06:15 回复(1)
slice(开始索引值位置,结束索引值位置):创建一个新的数组,从原数组中截取数组元素;
发表于 2020-12-17 09:48:33 回复(0)
slice(start, end) :返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。即:[start, end)
截取的部分是下标start到end。(数组的下标从0开始)
start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
请注意,该方法并不会修改数组,而是返回一个子数组。
发表于 2019-12-20 21:01:43 回复(0)
其实应该是,slice的参数中只要有负数,就用数组的长度加上这个负数来确定位置。因为slice的第一个参数也可以是负数,同样加上数组长度。(JavaScript高级程序设计这本书有说到这个)
发表于 2021-03-17 03:27:14 回复(0)
<!DOCTYPE html>
<html>
<body>

<h1>JavaScript 数组</h1>

<p>请单击按钮,以使用负数参数提取第三个和第四个元素。</p>

<button onclick="myFunction()">试一试</button>

<p id="demo"></p>

<script>
function myFunction() {
  var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
  var myBest = fruits.slice(-3, -1);
  document.getElementById("demo").innerHTML = myBest;
}
</script>

</body>
</html>
第一个表示从左侧开始正数索引0但是不包括,所以需要从第二个元素的索引也就是1开始,这样第一个元素也就是索引0的值就被删除了,第二个参数索引为-1,是表示最后一个元素,slice是左闭右开区间,所以-1刚好包括到删除内,是没问题的。负数就是倒着数,正着数就是从0,1,2...的索引开始,负着数是从最后一个开始算-1,因为es5之前是arr[arr.length-1],看看arr.at(-1)这个就懂了
发表于 2023-11-07 17:22:55 回复(0)
这道题应该有问题,slice不会操作原数组的。只有改为splice这道题答案才是对的。
发表于 2021-01-04 11:57:55 回复(0)
-1表示到倒数第一个为止
发表于 2020-09-11 13:28:56 回复(0)