Highlight: forEach() メソッド
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
forEach()
は Highlight
インターフェイスのメソッドで、Highlight
オブジェクト内の各 Range
オブジェクトに対して、指定された関数を、挿入順に 1 回ずつ実行します。
Highlight
は Set
風オブジェクトですので、これは Set.forEach()
を使うのと似ています。
構文
js
forEach(callbackFn)
forEach(callbackFn, thisArg)
引数
callback
-
それぞれの
Range
オブジェクトについて呼び出される関数で、 3 つの引数を取ります。range
,key
-
Highlight
で現在処理されているRange
オブジェクト。Highlight
にはキーがないため、range
は両方の引数に渡されます。 highlight
-
forEach()
が呼び出されたHighlight
オブジェクト。
thisArg
-
callbackFn
の実行時にthis
として使用される値。
返値
なし (undefined
)。
例
以下のコードスニペットは、2 つの範囲を持つ新しいハイライトを作成し、 forEach()
メソッドを使用してその範囲をログ出力する方法を示しています。
js
function logRanges(range, key, highlight) {
console.log(`Highlight object ${highlight} contains range ${range}`);
}
const text = new Text("Time is an illusion. Lunchtime doubly so.");
const range1 = document.createRange();
range1.setStart(text, 0);
range1.setEnd(text, 4);
const range2 = document.createRange();
range2.setStart(text, 21);
range2.setEnd(text, 30);
const myHighlight = new Highlight();
myHighlight.add(range1);
myHighlight.add(range2);
myHighlight.forEach(logRanges);
仕様書
Specification |
---|
ECMAScript® 2026 Language Specification # sec-set.prototype.foreach |