Bản dịch này chưa hoàn thành. Xin hãy giúp dịch bài viết này từ tiếng Anh.

Phương thứcsplice() thay đổi số phần tử của mảng bằng cách xóa hoặc thêm phần tử mới.

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];

myFish.splice(2, 0, 'drum'); // insert 'drum' at 2-index position
// myFish is ["angel", "clown", "drum", "mandarin", "sturgeon"]

myFish.splice(2, 1); // remove 1 item at 2-index position (that is, "drum")
// myFish is ["angel", "clown","mandarin", "sturgeon"]

Syntax

array.splice(start)
array.splice(start, deleteCount)
array.splice(start, deleteCount, item1, item2, ...)

Các tham số 

start
Chỉ số của mảng mà ở đó bắt đầu thay đổi mảng (origin là 0). Nếu lớn hơn độ dài của mảng, thì chỉ số Start được thiết lập bằng độ dài của mảng. Nếu giá trị là âm , thì chỉ số bắt đầu từ các phần từ đó được sét từ cuối mảng (origin là 1) và start bằng 0 nếu giá trị thiết lập là lớn hơn độ dài của màng. 
deleteCount Optional
Con số chỉ định số lượng các phần tử mảng để xóa. Nếu deleteCount bằng 0, không phần tử nào được xóa. Trong trường hợp này bạn sẽ phải xác định ít nhất 1 phần tử mới. Nếu deleteCount là lớn hơn số lượng phần tử còn lại của mảng bắt đầu từ  start, thì tất cả các phần từ từ start  tới cuối mảng sẽ bị xóa.
Nếu deleteCount bị loại bỏ, hoặc nếu giá trị của nó lớn hơn array.length - start,  thì tất cả các phần từ bắt đầu từ chỉ số  start  tới cuối mảng sẽ bị xóa.
item1, item2, ... Optional
Các phần từ thêm vào mảng bắt đầu từ chỉ số  start . Nếu không chỉ rõ bất kỳ phần từ nào, splice() sẽ chỉ xóa các phần từ trong mảng.

Giá trị trả về

Trả về một mảng chưa các phần từ bị xóa. Nếu chỉ có 1 phần từ bị xóa, trả về mảng chứa 1 phần tử. Nếu không có phần tử nào bị xóa, trả về mảng rỗng.

Mô tả

Nếu bạn chỉ rõ 1 lượng các phần tử lớn hơn số phần từ bị xóa đi. Mảng mới sẽ có độ dài khác . 

Ví dụ

Xóa 0 phần tử có chỉ số là 2, và thêm "drum"

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
var removed = myFish.splice(2, 0, 'drum');

// myFish is ["angel", "clown", "drum", "mandarin", "sturgeon"] 
// removed is [], no elements removed

Xóa 1 phần tử mảng có chỉ số 3

var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon'];
var removed = myFish.splice(3, 1);

// removed is ["mandarin"]
// myFish is ["angel", "clown", "drum", "sturgeon"] 

Xóa 1 phần tử mảng có chỉ số 2 , và thêm phần tử "trumpet"

var myFish = ['angel', 'clown', 'drum', 'sturgeon'];
var removed = myFish.splice(2, 1, 'trumpet');

// myFish is ["angel", "clown", "trumpet", "sturgeon"]
// removed is ["drum"]

Xóa 2 phần tử mảng bắt đầu bằng chỉ số 0, và thêm "parrot", "anemone" và "blue"

var myFish = ['angel', 'clown', 'trumpet', 'sturgeon'];
var removed = myFish.splice(0, 2, 'parrot', 'anemone', 'blue');

// myFish is ["parrot", "anemone", "blue", "trumpet", "sturgeon"] 
// removed is ["angel", "clown"]

Xóa 2 phần tử bắt đầu bằng chỉ số 2 

var myFish = ['parrot', 'anemone', 'blue', 'trumpet', 'sturgeon'];
var removed = myFish.splice(myFish.length - 3, 2);

// myFish is ["parrot", "anemone", "sturgeon"] 
// removed is ["blue", "trumpet"]

Xóa 1 phần tử mảng với chỉ số là  -2

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
var removed = myFish.splice(-2, 1);

// myFish is ["angel", "clown", "sturgeon"] 
// removed is ["mandarin"]

Remove all elements after index 2 (incl.)

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
var removed = myFish.splice(2);

// myFish is ["angel", "clown"] 
// removed is ["mandarin", "sturgeon"]

Specifications

Specification Status Comment
ECMAScript 3rd Edition (ECMA-262) Standard Initial definition. Implemented in JavaScript 1.2.
ECMAScript 5.1 (ECMA-262)
The definition of 'Array.prototype.splice' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Array.prototype.splice' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'Array.prototype.splice' in that specification.
Living Standard  

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support1 Yes15.5 Yes Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support Yes Yes Yes4 Yes Yes Yes

See also

  • push() / pop() — add/remove elements from the end of the array
  • unshift() / shift() — add/remove elements from the beginning of the array
  • concat() — returns a new array comprised of this array joined with other array(s) and/or value(s)

Document Tags and Contributors

 Những người đóng góp cho trang này: toolaugh
 Cập nhật lần cuối bởi: toolaugh,