JavaScript - Array slice() 方法



在 JavaScript 中,Array.slice() 方法用于从数组中选择一部分元素,并返回包含这些选定元素的新数组。它接受两个参数:“start” 索引和“end” 索引。它从给定的 “start” 开始选择,直到给定的 “end”。如果我们不提供 end 索引,则该方法会提取到数组的末尾。

此方法不会修改现有数组,而是返回一个包含所选元素的浅拷贝的新数组。

语法

以下是 JavaScript Array slice() 方法的语法:

array.slice(start, end);

参数

此方法接受两个参数。下面描述了相同的内容:

  • start - 这是我们要从数组中选择元素的起始位置。默认值为 0。
  • end - 这是我们要停止选择元素之前的数组位置。默认值为最后一个元素。

返回值

此方法返回一个包含提取元素的新数组。它不会修改原始数组。

示例

示例 1

在下面的示例中,我们将 “2” 作为起始索引传递给 JavaScript Array slice() 方法。

<html>
<body>
   <p id="demo"></p>
   <script>
      const animals = ["Lion", "Cheetah", "Tiger", "Elephant", "Dinosaur"];
      let result = animals.slice(2);
      document.getElementById("demo").innerHTML = result;
   </script>
</body>
</html>

执行上述程序后,slice() 方法将选择并返回从索引位置 2 到数组末尾的所有元素。

输出

Tiger,Elephant,Dinosaur

示例 2

在这里,我们选择并返回从索引 2 处的元素到索引 4 处的元素:

<html>
<body>
   <p id="demo"></p>
   <script>
      const animals = ["Lion", "Cheetah", "Tiger", "Elephant", "Dinosaur"];
      let result = animals.slice(2, 4);
      document.getElementById("demo").innerHTML = result;
   </script>
</body>
</html>

输出

Tiger,Elephant

示例 3

在这里,我们将负值 “-2” 作为参数传递给 slice() 方法的起始索引。因此,该方法从数组的末尾开始选择元素。

<html>
<body>
   <p id="demo"></p>
   <script>
      const animals = ["Lion", "Cheetah", "Tiger", "Elephant", "Dinosaur"];
      let result = animals.slice(-2);
      document.getElementById("demo").innerHTML = result;
   </script>
</body>
</html>

输出

Elephant,Dinosaur

示例 4

在此示例中,我们将 “-4” 作为起始位置和 “-1” 作为结束位置。因此,它选择并返回从倒数第四个到倒数第二个的元素。

<html>
<body>
   <p id="demo"></p>
   <script>
      const animals = ["Lion", "Cheetah", "Tiger", "Elephant", "Dinosaur"];
      let result = animals.slice(-4, -1);
      document.getElementById("demo").innerHTML = result;
   </script>
</body>
</html>

输出

Cheetah,Tiger,Elephant

示例 5

如果未传递任何参数,则 slice() 方法返回的结果数组包含与原始 animals 数组相同的元素。

<html>
<body>
   <p id="demo"></p>
   <script>
      const animals = ["Lion", "Cheetah", "Tiger", "Elephant", "Dinosaur"];
      let result = animals.slice();
      document.getElementById("demo").innerHTML = result;
   </script>
</body>
</html>

输出

正如我们所看到的输出,result 数组包含与 animals 数组相同的元素。

Lion,Cheetah,Tiger,Elephant,Dinosaur
广告