このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Element: append() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2018年4月⁩.

Element.append() メソッドは、一連の Node オブジェクトまたは文字列を Element の最後の子の後に挿入します。文字列は、等価な Text ノードとして挿入されます。

Node.appendChild() との違いは次の通りです。

  • Element.append() は文字列も追加することができますが、Node.appendChild()Node オブジェクトのみを受け付けます。
  • Element.append() には返値がありませんが、Node.appendChild() は追加された Node オブジェクトを返します。
  • Element.append() は複数のノードや文字列を追加することができますが、Node.appendChild() はノードを 1 つだけしか追加することができせん。

構文

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

引数

param1, …, paramN

挿入する一連の Node オブジェクトまたは文字列です。

返値

なし (undefined)。

例外

HierarchyRequestError DOMException

ノードが階層構造の中の指定された位置に挿入できなかったときに発生します。

要素の追加

js
let div = document.createElement("div"); let p = document.createElement("p"); div.append(p); console.log(div.childNodes); // NodeList [ <p> ] 

テキストの追加

js
let div = document.createElement("div"); div.append("Some text"); console.log(div.textContent); // "Some text" 

要素とテキストの追加

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> ] 

append メソッドはスコープが効かない

append() メソッドは with 文の中ではスコープが効きません。詳しくは Symbol.unscopables をご覧ください。

js
let div = document.createElement("div"); with (div) { append("foo"); } // ReferenceError: append is not defined 

仕様書

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

ブラウザーの互換性

関連情報