⏺️

Javascript / DOM に於ける 範囲表現

に公開

範囲表現

JavaScript API

項目名 開始名 長さ 終了名 終了が含まれるか
Array.prototype.slice() start - end いいえ
String.prototype.substring() indexStart - indexEnd いいえ
Array.prototype.splice() start deleteCount - -
Array.prototype.copyWithin() start - end いいえ

Javascript の 標準メソッド群だと大体 index を元にした 範囲表現となるので基本的には end が含まれない のでは?感あります。

DOM API

項目名 開始名 長さ 終了名 終了が含まれるか
HTMLInputElement selectionStart - selectionEnd はい
HTMLTextAreaElement selectionStart - selectionEnd はい
EditContext selectionStart - selectionEnd はい
TextUpdateEvent selectionStart - selectionEnd はい
TextUpdateEvent updateRangeStart - updateRangeEnd はい
CharacterBoundsUpdateEvent rangeStart - rangeEnd はい
AbstractRange startOffset - endOffset はい
Range startOffset - endOffset はい
Range startContainer - endContainer はい
StaticRange startOffset - endOffset はい
StaticRange startContainer - endContainer はい
TextTrackCue startTime - endTime はい
TextFormat rangeStart - rengeEnd はい
ViewTimeline startOffset - endOffset はい
PerformanceResourceTiming connectStart - connectEnd はい
PerformanceResourceTiming domainLookupStart - domainLookupEnd はい
PerformanceResourceTiming fetchStart - responseEnd はい
PerformanceResourceTiming redirectStart - redirectEnd はい
PerformanceResourceTiming requestStart - responseStart はい
PerformanceNavigationTiming domContentLoadedEventStart - domContentLoadedEventEnd はい
PerformanceNavigationTiming loadEventStart - loadEventEnd はい
AudioBufferSourceNode loopStart - loopEnd はい
SVGTextContentElement getStartPositionOfChar() - getEndPositionOfChar() はい
PerformanceMeasure startTime duration - -

DOM での範囲表現はだいたい クラスによる表現の話となります。 その為、終了は基本的に含まれる形な模様。構造とするならそれはそう という話ではある。

以上。

Discussion