aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasahiro FUJIMOTO <mfujimot@gmail.com>2022-02-27 17:35:44 +0900
committerMasahiro FUJIMOTO <mfujimot@gmail.com>2022-03-06 14:10:33 +0900
commitdd0a249a5aca733d09f33a10b32e20e435a99da9 (patch)
tree6fe8b1bf3f15aa7d46a5afe7b69fd4320f0786c1
parentdd4c3fd91ffcfdfbbe292e9c8fe826ae76cdbfed (diff)
downloadtranslated-content-dd0a249a5aca733d09f33a10b32e20e435a99da9.tar.gz
translated-content-dd0a249a5aca733d09f33a10b32e20e435a99da9.tar.bz2
translated-content-dd0a249a5aca733d09f33a10b32e20e435a99da9.zip
2022/01/23 時点の英語版に同期
-rw-r--r--files/ja/web/api/node/normalize/index.md79
1 files changed, 52 insertions, 27 deletions
diff --git a/files/ja/web/api/node/normalize/index.md b/files/ja/web/api/node/normalize/index.md
index 83026ac378..7432a8f979 100644
--- a/files/ja/web/api/node/normalize/index.md
+++ b/files/ja/web/api/node/normalize/index.md
@@ -1,48 +1,73 @@
---
-title: Node.normalize
+title: Node.normalize()
slug: Web/API/Node/normalize
tags:
- - DOM
- - Gecko
- - Node
+ - メソッド
+ - リファレンス
+browser-compat: api.Node.normalize
translation_of: Web/API/Node/normalize
---
-<div>{{ApiRef}}</div>
+{{APIRef("DOM")}}
-<h2 id="Summary" name="Summary">概要</h2>
+**`normalize()`** は {{domxref("Node")}} インターフェイスのメソッドで、指定されたノードとその下のツリーを*正規化された*形にします。
+正規化されたサブツリーでは、サブツリー内に空のテキストノードがなくなり、隣り合うテキストノードがなくなります。
-<p>指定ノードの空のノードを削除し、隣接するテキストノードをひとつに纏め、文書を「正規化 (normalize)」します。</p>
+## 構文
-<h2 id="Syntax" name="Syntax">構文</h2>
+```js
+normalize();
+```
-<pre class="syntaxbox"><em>element</em>.normalize();
-</pre>
+### 引数
-<h2 id="Example" name="Example">例</h2>
+なし。
-<pre class="brush:js;highlight:10;">var wrapper = document.createElement("div");
+### 返値
+
+なし。
+
+## 例
+
+```html
+<output id="result"></output>
+```
+
+```js
+let wrapper = document.createElement("div");
wrapper.appendChild( document.createTextNode("Part 1 ") );
wrapper.appendChild( document.createTextNode("Part 2 ") );
-// wrapper.childNodes[0].textContent === "Part 1 "
-// wrapper.childNodes[1].textContent === "Part 2 "
-// この時点で、wrapper の 子ノード数は 2 です。 wrapper.childNodes.length === 2
+let node = wrapper.firstChild;
+let result = "正規化前:<br/>";
+while (node) {
+ result += " " + node.nodeName + ": " + node.nodeValue + "<br/>";
+ node = node.nextSibling;
+}
+
+wrapper.normalize();
+
+node = wrapper.firstChild;
+result += "<br/><br/>正規化後:<br/>";
+while (node) {
+ result += " " + node.nodeName + ": " + node.nodeValue + "<br/>";
+ node = node.nextSibling;
+}
+
+const output = document.getElementById("result");
+output.innerHTML = result;
+```
+
+{{ EmbedLiveSample("Example", "100%", "170")}}
-wrapper.normalize(); // 正規化
+## 仕様書
-// 正規化後の wrapper の子ノード数は 1 となっています。 wrapper.childNodes.length === 1
-// 挿入処理の為に冗長化したノードはひとつに纏められています。 wrapper.childNodes[0].textContent === "Part 1 Part 2"
-</pre>
+{{Specifications}}
-<h2 id="Specification" name="Specification">仕様書</h2>
+## ブラウザーの互換性
-<ul>
- <li><a href="http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-normalize">DOM Level 2 Core: Node.normalize</a></li>
-</ul>
+{{Compat}}
-<h2 id="See_also" name="See_also">関連情報</h2>
+## 関連情報
-<ul>
- <li><a href="/ja/docs/Web/API/Text.splitText"><code>Text.splitText</code></a></li>
-</ul>
+- 逆の操作である {{domxref("Text.splitText()")}}