Element: phương thức append()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.

Phương thức Element.append() chèn một tập hợp các đối tượng Node hoặc chuỗi vào sau con cuối cùng của Element. Các chuỗi được chèn dưới dạng các nút Text tương đương.

Sự khác biệt so với Node.appendChild():

  • Element.append() cho phép bạn chèn cả chuỗi, trong khi Node.appendChild() chỉ chấp nhận các đối tượng Node.
  • Element.append() không có giá trị trả về, trong khi Node.appendChild() trả về đối tượng Node đã được chèn.
  • Element.append() có thể chèn nhiều nút và chuỗi, trong khi Node.appendChild() chỉ có thể chèn một nút.

Cú pháp

js
append(param1)
append(param1, param2)
append(param1, param2, /* …, */ paramN)

Tham số

param1, …, paramN

Một tập hợp các đối tượng Node hoặc chuỗi cần chèn.

Giá trị trả về

Không có (undefined).

Ngoại lệ

HierarchyRequestError DOMException

Được ném khi nút không thể được chèn tại điểm đã chỉ định trong hệ thống phân cấp.

Ví dụ

Chèn một phần tử

js
let div = document.createElement("div");
let p = document.createElement("p");
div.append(p);

console.log(div.childNodes); // NodeList [ <p> ]

Chèn văn bản

js
let div = document.createElement("div");
div.append("Some text");

console.log(div.textContent); // "Some text"

Chèn một phần tử và văn bản

js
let div = document.createElement("div");
let p = document.createElement("p");
div.append("Some text", p);

console.log(div.childNodes); // NodeList [ #text "Some text", <p> ]

Phương thức append không nằm trong scope

Phương thức append() không được đưa vào scope của câu lệnh with. Xem Symbol.unscopables để biết thêm thông tin.

js
let div = document.createElement("div");

with (div) {
  append("foo");
}
// ReferenceError: append is not defined

Đặc tả kỹ thuật

Specification
DOM
# ref-for-dom-parentnode-append①

Tương thích trình duyệt

Xem thêm