jscrewit 2.41.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,18 +30,18 @@ If no arguments are specified, the new feature object will be equivalent to
30
30
  ## Example
31
31
 
32
32
  The following statements are equivalent, and will all construct a new feature object
33
- including both [\`ANY\_DOCUMENT\`](#any_document) and [\`ANY\_WINDOW\`](#any_window).
33
+ including both [\`DOCUMENT\`](#document) and [\`WINDOW\`](#window).
34
34
 
35
35
  ```js
36
- new JScrewIt.Feature("ANY_DOCUMENT", "ANY_WINDOW");
36
+ new JScrewIt.Feature("DOCUMENT", "WINDOW");
37
37
  ```
38
38
 
39
39
  ```js
40
- new JScrewIt.Feature(JScrewIt.Feature.ANY_DOCUMENT, JScrewIt.Feature.ANY_WINDOW);
40
+ new JScrewIt.Feature(JScrewIt.Feature.DOCUMENT, JScrewIt.Feature.WINDOW);
41
41
  ```
42
42
 
43
43
  ```js
44
- new JScrewIt.Feature([JScrewIt.Feature.ANY_DOCUMENT, JScrewIt.Feature.ANY_WINDOW]);
44
+ new JScrewIt.Feature([JScrewIt.Feature.DOCUMENT, JScrewIt.Feature.WINDOW]);
45
45
  ```
46
46
 
47
47
  ## Throws
@@ -74,18 +74,18 @@ If no arguments are specified, the new feature object will be equivalent to
74
74
  #### Example
75
75
 
76
76
  The following statements are equivalent, and will all construct a new feature object
77
- including both [\`ANY\_DOCUMENT\`](#any_document) and [\`ANY\_WINDOW\`](#any_window).
77
+ including both [\`DOCUMENT\`](#document) and [\`WINDOW\`](#window).
78
78
 
79
79
  ```js
80
- JScrewIt.Feature("ANY_DOCUMENT", "ANY_WINDOW");
80
+ JScrewIt.Feature("DOCUMENT", "WINDOW");
81
81
  ```
82
82
 
83
83
  ```js
84
- JScrewIt.Feature(JScrewIt.Feature.ANY_DOCUMENT, JScrewIt.Feature.ANY_WINDOW);
84
+ JScrewIt.Feature(JScrewIt.Feature.DOCUMENT, JScrewIt.Feature.WINDOW);
85
85
  ```
86
86
 
87
87
  ```js
88
- JScrewIt.Feature([JScrewIt.Feature.ANY_DOCUMENT, JScrewIt.Feature.ANY_WINDOW]);
88
+ JScrewIt.Feature([JScrewIt.Feature.DOCUMENT, JScrewIt.Feature.WINDOW]);
89
89
  ```
90
90
 
91
91
  #### Throws
@@ -120,83 +120,15 @@ featureObj === JScrewIt.Feature.ALL[featureObj.name]
120
120
 
121
121
  ***
122
122
 
123
- ### ANDRO\_4\_0
124
-
125
- > **ANDRO\_4\_0**: [`PredefinedFeature`](PredefinedFeature.md)
126
-
127
- Features available in Android Browser 4.0.
128
-
129
- #### Inherited from
130
-
131
- [`FeatureAll`](FeatureAll.md).[`ANDRO_4_0`](FeatureAll.md#andro_4_0)
132
-
133
- ***
134
-
135
- ### ANDRO\_4\_1
136
-
137
- > **ANDRO\_4\_1**: [`PredefinedFeature`](PredefinedFeature.md)
138
-
139
- Features available in Android Browser 4.1 to 4.3.
140
-
141
- #### Inherited from
142
-
143
- [`FeatureAll`](FeatureAll.md).[`ANDRO_4_1`](FeatureAll.md#andro_4_1)
144
-
145
- ***
146
-
147
- ### ANDRO\_4\_4
148
-
149
- > **ANDRO\_4\_4**: [`PredefinedFeature`](PredefinedFeature.md)
150
-
151
- Features available in Android Browser 4.4.
152
-
153
- #### Inherited from
154
-
155
- [`FeatureAll`](FeatureAll.md).[`ANDRO_4_4`](FeatureAll.md#andro_4_4)
156
-
157
- ***
158
-
159
- ### ANY\_DOCUMENT
160
-
161
- > **ANY\_DOCUMENT**: [`ElementaryFeature`](ElementaryFeature.md)
162
-
163
- Existence of the global object document whose string representation starts with "\[object " and ends with "Document\]".
164
-
165
- #### Remarks
166
-
167
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser. This feature is not available inside web workers.
168
-
169
- #### Inherited from
170
-
171
- [`FeatureAll`](FeatureAll.md).[`ANY_DOCUMENT`](FeatureAll.md#any_document)
172
-
173
- ***
174
-
175
- ### ANY\_WINDOW
176
-
177
- > **ANY\_WINDOW**: [`ElementaryFeature`](ElementaryFeature.md)
178
-
179
- Existence of the global object self whose string representation starts with "\[object " and ends with "Window\]".
180
-
181
- #### Remarks
182
-
183
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser. This feature is not available inside web workers.
184
-
185
- #### Inherited from
186
-
187
- [`FeatureAll`](FeatureAll.md).[`ANY_WINDOW`](FeatureAll.md#any_window)
188
-
189
- ***
190
-
191
123
  ### ARRAY\_ITERATOR
192
124
 
193
125
  > **ARRAY\_ITERATOR**: [`ElementaryFeature`](ElementaryFeature.md)
194
126
 
195
- The property that the string representation of Array.prototype.entries\(\) starts with "\[object Array" and ends with "\]" at index 21 or 22.
127
+ The property that the string representation of Array.prototype.entries\(\) evaluates to "\[object Array Iterator\]".
196
128
 
197
129
  #### Remarks
198
130
 
199
- Available in Chrome, Edge, Firefox, Safari 7.1+, Opera, and Node.js 0.12+.
131
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
200
132
 
201
133
  #### Inherited from
202
134
 
@@ -212,7 +144,7 @@ Support for arrow functions.
212
144
 
213
145
  #### Remarks
214
146
 
215
- Available in Chrome, Edge, Firefox, Safari 10.0+, Opera, and Node.js 4+.
147
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
216
148
 
217
149
  #### Inherited from
218
150
 
@@ -220,31 +152,15 @@ Available in Chrome, Edge, Firefox, Safari 10.0+, Opera, and Node.js 4+.
220
152
 
221
153
  ***
222
154
 
223
- ### ASYNC\_FUNCTION
224
-
225
- > **ASYNC\_FUNCTION**: [`ElementaryFeature`](ElementaryFeature.md)
226
-
227
- Support for async functions, which return Promise object.
228
-
229
- #### Remarks
230
-
231
- Available in Chrome, Edge, Firefox, Safari 10.1+, Opera, and Node.js 7.6+.
232
-
233
- #### Inherited from
234
-
235
- [`FeatureAll`](FeatureAll.md).[`ASYNC_FUNCTION`](FeatureAll.md#async_function)
236
-
237
- ***
238
-
239
155
  ### AT
240
156
 
241
157
  > **AT**: [`ElementaryFeature`](ElementaryFeature.md)
242
158
 
243
- Existence of the native function Array.prototype.at.
159
+ Existence of the native functions Array.prototype.at and String.prototype.at.
244
160
 
245
161
  #### Remarks
246
162
 
247
- Available in Chrome, Edge, Firefox, Safari 15.4+, Opera, and Node.js 16.6+.
163
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
248
164
 
249
165
  #### Inherited from
250
166
 
@@ -252,22 +168,6 @@ Available in Chrome, Edge, Firefox, Safari 15.4+, Opera, and Node.js 16.6+.
252
168
 
253
169
  ***
254
170
 
255
- ### ATOB
256
-
257
- > **ATOB**: [`ElementaryFeature`](ElementaryFeature.md)
258
-
259
- Existence of the global functions atob and btoa.
260
-
261
- #### Remarks
262
-
263
- Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Android Browser, and Node.js 16.0+. This feature is not available inside web workers in Safari before 10.0.
264
-
265
- #### Inherited from
266
-
267
- [`FeatureAll`](FeatureAll.md).[`ATOB`](FeatureAll.md#atob)
268
-
269
- ***
270
-
271
171
  ### AUTO
272
172
 
273
173
  > **AUTO**: [`PredefinedFeature`](PredefinedFeature.md)
@@ -288,7 +188,7 @@ Existence of the global object statusbar having the string representation "\[obj
288
188
 
289
189
  #### Remarks
290
190
 
291
- Available in Chrome, Edge, Firefox, Safari, Opera, and Android Browser 4.4. This feature is not available inside web workers.
191
+ Available in Chrome, Edge, Firefox, Safari, and Opera. This feature is not available inside web workers.
292
192
 
293
193
  #### Inherited from
294
194
 
@@ -310,22 +210,6 @@ No support for Node.js.
310
210
 
311
211
  ***
312
212
 
313
- ### CALL\_ON\_GLOBAL
314
-
315
- > **CALL\_ON\_GLOBAL**: [`ElementaryFeature`](ElementaryFeature.md)
316
-
317
- The ability to call a function on the global object when invoking Function.prototype.call without binding.
318
-
319
- #### Remarks
320
-
321
- Available in Android Browser before 4.1.
322
-
323
- #### Inherited from
324
-
325
- [`FeatureAll`](FeatureAll.md).[`CALL_ON_GLOBAL`](FeatureAll.md#call_on_global)
326
-
327
- ***
328
-
329
213
  ### CAPITAL\_HTML
330
214
 
331
215
  > **CAPITAL\_HTML**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -396,7 +280,7 @@ An alias for `CHROME_122`.
396
280
 
397
281
  All new browsers' features.
398
282
 
399
- No support for Node.js and older browsers like Internet Explorer, Safari 17.3 or Android Browser.
283
+ Not compatible with Node.js, Internet Explorer, and old versions of supported browsers.
400
284
 
401
285
  #### Inherited from
402
286
 
@@ -414,7 +298,7 @@ This feature may become unavailable when certain browser extensions are active.
414
298
 
415
299
  #### Remarks
416
300
 
417
- Available in Internet Explorer 10+, Safari before 14.1, and Android Browser. This feature is not available inside web workers in Safari before 7.1 and Android Browser 4.4.
301
+ Available in Internet Explorer.
418
302
 
419
303
  #### Inherited from
420
304
 
@@ -422,20 +306,6 @@ Available in Internet Explorer 10+, Safari before 14.1, and Android Browser. Thi
422
306
 
423
307
  ***
424
308
 
425
- ### CREATE\_ELEMENT
426
-
427
- > **CREATE\_ELEMENT**: [`ElementaryFeature`](ElementaryFeature.md)
428
-
429
- Existence of the function document.createElement.
430
-
431
- An alias for `ANY_DOCUMENT`.
432
-
433
- #### Inherited from
434
-
435
- [`FeatureAll`](FeatureAll.md).[`CREATE_ELEMENT`](FeatureAll.md#create_element)
436
-
437
- ***
438
-
439
309
  ### DEFAULT
440
310
 
441
311
  > **DEFAULT**: [`PredefinedFeature`](PredefinedFeature.md)
@@ -452,11 +322,11 @@ Minimum feature level, compatible with all supported engines in all environments
452
322
 
453
323
  > **DOCUMENT**: [`ElementaryFeature`](ElementaryFeature.md)
454
324
 
455
- Existence of the global object document having the string representation "\[object Document\]".
325
+ Existence of the global object document whose string representation starts with "\[object " and ends with "Document\]".
456
326
 
457
327
  #### Remarks
458
328
 
459
- Available in Internet Explorer before 11. This feature is not available inside web workers.
329
+ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, and Opera. This feature is not available inside web workers.
460
330
 
461
331
  #### Inherited from
462
332
 
@@ -464,22 +334,6 @@ Available in Internet Explorer before 11. This feature is not available inside w
464
334
 
465
335
  ***
466
336
 
467
- ### DOMWINDOW
468
-
469
- > **DOMWINDOW**: [`ElementaryFeature`](ElementaryFeature.md)
470
-
471
- Existence of the global object self having the string representation "\[object DOMWindow\]".
472
-
473
- #### Remarks
474
-
475
- Available in Android Browser before 4.4. This feature is not available inside web workers.
476
-
477
- #### Inherited from
478
-
479
- [`FeatureAll`](FeatureAll.md).[`DOMWINDOW`](FeatureAll.md#domwindow)
480
-
481
- ***
482
-
483
337
  ### ELEMENTARY
484
338
 
485
339
  > `readonly` **ELEMENTARY**: readonly [`ElementaryFeature`](ElementaryFeature.md)[]
@@ -488,22 +342,6 @@ An immutable array of all elementary feature objects ordered by name.
488
342
 
489
343
  ***
490
344
 
491
- ### ESC\_HTML\_ALL
492
-
493
- > **ESC\_HTML\_ALL**: [`ElementaryFeature`](ElementaryFeature.md)
494
-
495
- The property that double quotation mark, less than and greater than characters in the argument of String.prototype.fontcolor are escaped into their respective HTML entities.
496
-
497
- #### Remarks
498
-
499
- Available in Android Browser and Node.js before 0.12.
500
-
501
- #### Inherited from
502
-
503
- [`FeatureAll`](FeatureAll.md).[`ESC_HTML_ALL`](FeatureAll.md#esc_html_all)
504
-
505
- ***
506
-
507
345
  ### ESC\_HTML\_QUOT
508
346
 
509
347
  > **ESC\_HTML\_QUOT**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -512,7 +350,7 @@ The property that double quotation marks in the argument of String.prototype.fon
512
350
 
513
351
  #### Remarks
514
352
 
515
- Available in Chrome, Edge, Firefox, Safari, Opera, Android Browser, and Node.js.
353
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
516
354
 
517
355
  #### Inherited from
518
356
 
@@ -520,54 +358,6 @@ Available in Chrome, Edge, Firefox, Safari, Opera, Android Browser, and Node.js.
520
358
 
521
359
  ***
522
360
 
523
- ### ESC\_HTML\_QUOT\_ONLY
524
-
525
- > **ESC\_HTML\_QUOT\_ONLY**: [`ElementaryFeature`](ElementaryFeature.md)
526
-
527
- The property that only double quotation marks and no other characters in the argument of String.prototype.fontcolor are escaped into HTML entities.
528
-
529
- #### Remarks
530
-
531
- Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js 0.12+.
532
-
533
- #### Inherited from
534
-
535
- [`FeatureAll`](FeatureAll.md).[`ESC_HTML_QUOT_ONLY`](FeatureAll.md#esc_html_quot_only)
536
-
537
- ***
538
-
539
- ### ESC\_REGEXP\_LF
540
-
541
- > **ESC\_REGEXP\_LF**: [`ElementaryFeature`](ElementaryFeature.md)
542
-
543
- Having regular expressions created with the RegExp constructor use escape sequences starting with a backslash to format line feed characters \("\\n"\) in their string representation.
544
-
545
- #### Remarks
546
-
547
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Node.js 12+.
548
-
549
- #### Inherited from
550
-
551
- [`FeatureAll`](FeatureAll.md).[`ESC_REGEXP_LF`](FeatureAll.md#esc_regexp_lf)
552
-
553
- ***
554
-
555
- ### ESC\_REGEXP\_SLASH
556
-
557
- > **ESC\_REGEXP\_SLASH**: [`ElementaryFeature`](ElementaryFeature.md)
558
-
559
- Having regular expressions created with the RegExp constructor use escape sequences starting with a backslash to format slashes \("/"\) in their string representation.
560
-
561
- #### Remarks
562
-
563
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Node.js 4+.
564
-
565
- #### Inherited from
566
-
567
- [`FeatureAll`](FeatureAll.md).[`ESC_REGEXP_SLASH`](FeatureAll.md#esc_regexp_slash)
568
-
569
- ***
570
-
571
361
  ### FF
572
362
 
573
363
  > **FF**: [`PredefinedFeature`](PredefinedFeature.md)
@@ -696,7 +486,7 @@ Existence of the native function Array.prototype.fill.
696
486
 
697
487
  #### Remarks
698
488
 
699
- Available in Chrome, Edge, Firefox, Safari 7.1+, Opera, and Node.js 4+.
489
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
700
490
 
701
491
  #### Inherited from
702
492
 
@@ -712,7 +502,7 @@ Existence of the native function Array.prototype.flat.
712
502
 
713
503
  #### Remarks
714
504
 
715
- Available in Chrome, Edge, Firefox, Safari 12+, Opera, and Node.js 11+.
505
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
716
506
 
717
507
  #### Inherited from
718
508
 
@@ -720,20 +510,6 @@ Available in Chrome, Edge, Firefox, Safari 12+, Opera, and Node.js 11+.
720
510
 
721
511
  ***
722
512
 
723
- ### FORMS
724
-
725
- > **FORMS**: [`ElementaryFeature`](ElementaryFeature.md)
726
-
727
- Existence of the object document.forms with string representation "\[object HTMLCollection\]".
728
-
729
- An alias for `ANY_DOCUMENT`.
730
-
731
- #### Inherited from
732
-
733
- [`FeatureAll`](FeatureAll.md).[`FORMS`](FeatureAll.md#forms)
734
-
735
- ***
736
-
737
513
  ### FROM\_CODE\_POINT
738
514
 
739
515
  > **FROM\_CODE\_POINT**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -742,7 +518,7 @@ Existence of the function String.fromCodePoint.
742
518
 
743
519
  #### Remarks
744
520
 
745
- Available in Chrome, Edge, Firefox, Safari 9+, Opera, and Node.js 4+.
521
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
746
522
 
747
523
  #### Inherited from
748
524
 
@@ -758,7 +534,7 @@ A string representation of dynamically generated functions where the character a
758
534
 
759
535
  #### Remarks
760
536
 
761
- Available in Chrome, Edge, Firefox, Safari 17.4+, Opera, and Node.js 10+.
537
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
762
538
 
763
539
  #### Inherited from
764
540
 
@@ -774,7 +550,7 @@ A string representation of dynamically generated functions where the character a
774
550
 
775
551
  #### Remarks
776
552
 
777
- Available in Internet Explorer, Safari 9+ before 17.4, Android Browser, and Node.js before 10.
553
+ Available in Internet Explorer.
778
554
 
779
555
  #### Inherited from
780
556
 
@@ -782,383 +558,181 @@ Available in Internet Explorer, Safari 9+ before 17.4, Android Browser, and Node
782
558
 
783
559
  ***
784
560
 
785
- ### GENERIC\_ARRAY\_TO\_STRING
786
-
787
- > **GENERIC\_ARRAY\_TO\_STRING**: [`ElementaryFeature`](ElementaryFeature.md)
788
-
789
- Ability to call Array.prototype.toString with a non-array binding.
561
+ ### IE\_11
790
562
 
791
- #### Remarks
563
+ > **IE\_11**: [`PredefinedFeature`](PredefinedFeature.md)
792
564
 
793
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, Android Browser 4.1+, and Node.js.
565
+ Features available in Internet Explorer 11.
794
566
 
795
567
  #### Inherited from
796
568
 
797
- [`FeatureAll`](FeatureAll.md).[`GENERIC_ARRAY_TO_STRING`](FeatureAll.md#generic_array_to_string)
569
+ [`FeatureAll`](FeatureAll.md).[`IE_11`](FeatureAll.md#ie_11)
798
570
 
799
571
  ***
800
572
 
801
- ### GLOBAL\_UNDEFINED
802
-
803
- > **GLOBAL\_UNDEFINED**: [`ElementaryFeature`](ElementaryFeature.md)
804
-
805
- Having the global function toString return the string "\[object Undefined\]" when invoked without a binding.
573
+ ### IE\_11\_WIN\_10
806
574
 
807
- #### Remarks
575
+ > **IE\_11\_WIN\_10**: [`PredefinedFeature`](PredefinedFeature.md)
808
576
 
809
- Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
577
+ Features available in Internet Explorer 11 on Windows 10.
810
578
 
811
579
  #### Inherited from
812
580
 
813
- [`FeatureAll`](FeatureAll.md).[`GLOBAL_UNDEFINED`](FeatureAll.md#global_undefined)
581
+ [`FeatureAll`](FeatureAll.md).[`IE_11_WIN_10`](FeatureAll.md#ie_11_win_10)
814
582
 
815
583
  ***
816
584
 
817
- ### GMT
585
+ ### IE\_SRC
818
586
 
819
- > **GMT**: [`ElementaryFeature`](ElementaryFeature.md)
587
+ > **IE\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
820
588
 
821
- Presence of the text "GMT" after the first 25 characters in the string returned by Date\(\).
589
+ A string representation of native functions typical for Internet Explorer.
822
590
 
823
- The string representation of dates is implementation dependent, but most engines use a similar format, making this feature available in all supported engines except Internet Explorer 9 and 10.
591
+ Remarkable traits are the presence of a line feed character \("\\n"\) at the beginning and at the end of the string and a line feed followed by four whitespaces \("\\n "\) before the "\[native code\]" sequence.
824
592
 
825
593
  #### Remarks
826
594
 
827
- Available in Chrome, Edge, Firefox, Internet Explorer 11, Safari, Opera, Android Browser, and Node.js.
595
+ Available in Internet Explorer.
828
596
 
829
597
  #### Inherited from
830
598
 
831
- [`FeatureAll`](FeatureAll.md).[`GMT`](FeatureAll.md#gmt)
599
+ [`FeatureAll`](FeatureAll.md).[`IE_SRC`](FeatureAll.md#ie_src)
832
600
 
833
601
  ***
834
602
 
835
- ### HISTORY
603
+ ### INCR\_CHAR
836
604
 
837
- > **HISTORY**: [`ElementaryFeature`](ElementaryFeature.md)
605
+ > **INCR\_CHAR**: [`ElementaryFeature`](ElementaryFeature.md)
838
606
 
839
- Existence of the global object history having the string representation "\[object History\]".
607
+ The ability to use unary increment operators with string characters, like in \( ++"some string"\[0\] \): this will result in a TypeError in strict mode in ECMAScript compliant engines.
840
608
 
841
609
  #### Remarks
842
610
 
843
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser. This feature is not available inside web workers.
611
+ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Node.js. This feature is not available when strict mode is enforced in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Node.js.
844
612
 
845
613
  #### Inherited from
846
614
 
847
- [`FeatureAll`](FeatureAll.md).[`HISTORY`](FeatureAll.md#history)
615
+ [`FeatureAll`](FeatureAll.md).[`INCR_CHAR`](FeatureAll.md#incr_char)
848
616
 
849
617
  ***
850
618
 
851
- ### HTMLAUDIOELEMENT
619
+ ### ITERATOR\_HELPER
852
620
 
853
- > **HTMLAUDIOELEMENT**: [`ElementaryFeature`](ElementaryFeature.md)
621
+ > **ITERATOR\_HELPER**: [`ElementaryFeature`](ElementaryFeature.md)
854
622
 
855
- Existence of the global object Audio whose string representation starts with "function HTMLAudioElement".
623
+ Availability of iterator helpers.
856
624
 
857
625
  #### Remarks
858
626
 
859
- Available in Android Browser 4.4. This feature is not available inside web workers.
627
+ Available in Chrome, Edge, Firefox 131+, Safari 18.4+, Opera, and Node.js 22.0+.
860
628
 
861
629
  #### Inherited from
862
630
 
863
- [`FeatureAll`](FeatureAll.md).[`HTMLAUDIOELEMENT`](FeatureAll.md#htmlaudioelement)
631
+ [`FeatureAll`](FeatureAll.md).[`ITERATOR_HELPER`](FeatureAll.md#iterator_helper)
864
632
 
865
633
  ***
866
634
 
867
- ### IE\_10
635
+ ### LOCALE\_INFINITY
636
+
637
+ > **LOCALE\_INFINITY**: [`ElementaryFeature`](ElementaryFeature.md)
638
+
639
+ Language sensitive string representation of Infinity as "∞".
868
640
 
869
- > **IE\_10**: [`PredefinedFeature`](PredefinedFeature.md)
641
+ #### Remarks
870
642
 
871
- Features available in Internet Explorer 10.
643
+ Available in Chrome, Edge, Firefox, Internet Explorer 11 on Windows 10, Safari, Opera, and Node.js.
872
644
 
873
645
  #### Inherited from
874
646
 
875
- [`FeatureAll`](FeatureAll.md).[`IE_10`](FeatureAll.md#ie_10)
647
+ [`FeatureAll`](FeatureAll.md).[`LOCALE_INFINITY`](FeatureAll.md#locale_infinity)
876
648
 
877
649
  ***
878
650
 
879
- ### IE\_11
880
-
881
- > **IE\_11**: [`PredefinedFeature`](PredefinedFeature.md)
651
+ ### LOCALE\_NUMERALS\_BN
882
652
 
883
- Features available in Internet Explorer 11.
653
+ > **LOCALE\_NUMERALS\_BN**: [`ElementaryFeature`](ElementaryFeature.md)
884
654
 
885
- #### Inherited from
655
+ Localized number formatting for Bengali.
886
656
 
887
- [`FeatureAll`](FeatureAll.md).[`IE_11`](FeatureAll.md#ie_11)
657
+ #### Remarks
888
658
 
889
- ***
659
+ Available in Chrome, Edge, Firefox, Internet Explorer 11 on Windows 10, Safari before 18.4, Opera, and Node.js.
890
660
 
891
- ### IE\_11\_WIN\_10
661
+ #### Inherited from
892
662
 
893
- > **IE\_11\_WIN\_10**: [`PredefinedFeature`](PredefinedFeature.md)
663
+ [`FeatureAll`](FeatureAll.md).[`LOCALE_NUMERALS_BN`](FeatureAll.md#locale_numerals_bn)
894
664
 
895
- Features available in Internet Explorer 11 on Windows 10.
665
+ ***
896
666
 
897
- #### Inherited from
667
+ ### LOCALE\_NUMERALS\_EXT
898
668
 
899
- [`FeatureAll`](FeatureAll.md).[`IE_11_WIN_10`](FeatureAll.md#ie_11_win_10)
669
+ > **LOCALE\_NUMERALS\_EXT**: [`ElementaryFeature`](ElementaryFeature.md)
900
670
 
901
- ***
671
+ Extended localized number formatting.
902
672
 
903
- ### IE\_9
673
+ Localized number formatting including the output of the first three letters in the second word of the Arabic string representation of NaN \("رقم"\), the letters in the Russian string representation of NaN \("не число"\) and the letters in the Persian string representation of NaN \("ناعدد"\).
904
674
 
905
- > **IE\_9**: [`PredefinedFeature`](PredefinedFeature.md)
675
+ #### Remarks
906
676
 
907
- Features available in Internet Explorer 9.
677
+ Available in Chrome, Edge, Firefox, Internet Explorer 11 on Windows 10, Safari, Opera, and Node.js.
908
678
 
909
679
  #### Inherited from
910
680
 
911
- [`FeatureAll`](FeatureAll.md).[`IE_9`](FeatureAll.md#ie_9)
681
+ [`FeatureAll`](FeatureAll.md).[`LOCALE_NUMERALS_EXT`](FeatureAll.md#locale_numerals_ext)
912
682
 
913
683
  ***
914
684
 
915
- ### IE\_SRC
916
-
917
- > **IE\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
685
+ ### NAME
918
686
 
919
- A string representation of native functions typical for Internet Explorer.
687
+ > **NAME**: [`ElementaryFeature`](ElementaryFeature.md)
920
688
 
921
- Remarkable traits are the presence of a line feed character \("\\n"\) at the beginning and at the end of the string and a line feed followed by four whitespaces \("\\n "\) before the "\[native code\]" sequence.
689
+ Existence of the name property for functions.
922
690
 
923
691
  #### Remarks
924
692
 
925
- Available in Internet Explorer.
693
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
926
694
 
927
695
  #### Inherited from
928
696
 
929
- [`FeatureAll`](FeatureAll.md).[`IE_SRC`](FeatureAll.md#ie_src)
697
+ [`FeatureAll`](FeatureAll.md).[`NAME`](FeatureAll.md#name)
930
698
 
931
699
  ***
932
700
 
933
- ### INCR\_CHAR
701
+ ### NO\_FF\_SRC
934
702
 
935
- > **INCR\_CHAR**: [`ElementaryFeature`](ElementaryFeature.md)
703
+ > **NO\_FF\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
936
704
 
937
- The ability to use unary increment operators with string characters, like in \( ++"some string"\[0\] \): this will result in a TypeError in strict mode in ECMAScript compliant engines.
705
+ A string representation of native functions typical for V8 or for Internet Explorer but not for Firefox and Safari.
938
706
 
939
707
  #### Remarks
940
708
 
941
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, Android Browser, and Node.js. This feature is not available when strict mode is enforced in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, and Node.js 5+.
709
+ Available in Chrome, Edge, Internet Explorer, Opera, and Node.js.
942
710
 
943
711
  #### Inherited from
944
712
 
945
- [`FeatureAll`](FeatureAll.md).[`INCR_CHAR`](FeatureAll.md#incr_char)
713
+ [`FeatureAll`](FeatureAll.md).[`NO_FF_SRC`](FeatureAll.md#no_ff_src)
946
714
 
947
715
  ***
948
716
 
949
- ### INTL
717
+ ### NO\_IE\_SRC
718
+
719
+ > **NO\_IE\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
950
720
 
951
- > **INTL**: [`ElementaryFeature`](ElementaryFeature.md)
721
+ A string representation of native functions typical for most engines with the notable exception of Internet Explorer.
952
722
 
953
- Existence of the global object Intl.
723
+ A remarkable trait of this feature is the lack of line feed characters at the beginning and at the end of the string.
954
724
 
955
725
  #### Remarks
956
726
 
957
- Available in Chrome, Edge, Firefox, Internet Explorer 11, Safari 10.0+, Opera, Android Browser 4.4, and Node.js 0.12+.
727
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
958
728
 
959
729
  #### Inherited from
960
730
 
961
- [`FeatureAll`](FeatureAll.md).[`INTL`](FeatureAll.md#intl)
731
+ [`FeatureAll`](FeatureAll.md).[`NO_IE_SRC`](FeatureAll.md#no_ie_src)
962
732
 
963
733
  ***
964
734
 
965
- ### ITERATOR\_HELPER
966
-
967
- > **ITERATOR\_HELPER**: [`ElementaryFeature`](ElementaryFeature.md)
968
-
969
- Availability of iterator helpers.
970
-
971
- #### Remarks
972
-
973
- Available in Chrome, Edge, Firefox 131+, Safari 18.4+, Opera, and Node.js 22.0+.
974
-
975
- #### Inherited from
976
-
977
- [`FeatureAll`](FeatureAll.md).[`ITERATOR_HELPER`](FeatureAll.md#iterator_helper)
978
-
979
- ***
980
-
981
- ### JAPANESE\_INFINITY
982
-
983
- > **JAPANESE\_INFINITY**: [`ElementaryFeature`](ElementaryFeature.md)
984
-
985
- Japanese string representation of Infinity ending with "∞".
986
-
987
- #### Remarks
988
-
989
- Available in Chrome, Edge, Firefox, Internet Explorer 11, Safari 10.0+, Opera, Android Browser 4.4, and Node.js 0.12+.
990
-
991
- #### Inherited from
992
-
993
- [`FeatureAll`](FeatureAll.md).[`JAPANESE_INFINITY`](FeatureAll.md#japanese_infinity)
994
-
995
- ***
996
-
997
- ### LOCALE\_INFINITY
998
-
999
- > **LOCALE\_INFINITY**: [`ElementaryFeature`](ElementaryFeature.md)
1000
-
1001
- Language sensitive string representation of Infinity as "∞".
1002
-
1003
- #### Remarks
1004
-
1005
- Available in Chrome, Edge, Firefox, Internet Explorer 11 on Windows 10, Safari 10.0+, Opera, Android Browser 4.4, and Node.js 0.12+.
1006
-
1007
- #### Inherited from
1008
-
1009
- [`FeatureAll`](FeatureAll.md).[`LOCALE_INFINITY`](FeatureAll.md#locale_infinity)
1010
-
1011
- ***
1012
-
1013
- ### LOCALE\_NUMERALS
1014
-
1015
- > **LOCALE\_NUMERALS**: [`ElementaryFeature`](ElementaryFeature.md)
1016
-
1017
- Features shared by all engines capable of localized number formatting, including output of Arabic digits, the Arabic decimal separator "٫", the letters in the first word of the Arabic string representation of NaN \("ليس"\), Persian digits and the Persian digit group separator "٬".
1018
-
1019
- #### Remarks
1020
-
1021
- Available in Chrome, Edge, Firefox, Internet Explorer 11, Safari 10.0+, Opera, Android Browser 4.4, and Node.js 13+.
1022
-
1023
- #### Inherited from
1024
-
1025
- [`FeatureAll`](FeatureAll.md).[`LOCALE_NUMERALS`](FeatureAll.md#locale_numerals)
1026
-
1027
- ***
1028
-
1029
- ### LOCALE\_NUMERALS\_BN
1030
-
1031
- > **LOCALE\_NUMERALS\_BN**: [`ElementaryFeature`](ElementaryFeature.md)
1032
-
1033
- Localized number formatting for Bengali.
1034
-
1035
- #### Remarks
1036
-
1037
- Available in Chrome, Edge, Firefox, Internet Explorer 11 on Windows 10, Safari 10.0+ before 18.4, Opera, Android Browser 4.4, and Node.js 13+.
1038
-
1039
- #### Inherited from
1040
-
1041
- [`FeatureAll`](FeatureAll.md).[`LOCALE_NUMERALS_BN`](FeatureAll.md#locale_numerals_bn)
1042
-
1043
- ***
1044
-
1045
- ### LOCALE\_NUMERALS\_EXT
1046
-
1047
- > **LOCALE\_NUMERALS\_EXT**: [`ElementaryFeature`](ElementaryFeature.md)
1048
-
1049
- Extended localized number formatting.
1050
-
1051
- This includes all features of LOCALE_NUMERALS plus the output of the first three letters in the second word of the Arabic string representation of NaN \("رقم"\), the letters in the Russian string representation of NaN \("не число"\) and the letters in the Persian string representation of NaN \("ناعدد"\).
1052
-
1053
- #### Remarks
1054
-
1055
- Available in Chrome, Edge, Firefox, Internet Explorer 11 on Windows 10, Safari 10.0+, Opera, Android Browser 4.4, and Node.js 13+. This feature is not available inside web workers in Safari 18.4+.
1056
-
1057
- #### Inherited from
1058
-
1059
- [`FeatureAll`](FeatureAll.md).[`LOCALE_NUMERALS_EXT`](FeatureAll.md#locale_numerals_ext)
1060
-
1061
- ***
1062
-
1063
- ### LOCATION
1064
-
1065
- > **LOCATION**: [`ElementaryFeature`](ElementaryFeature.md)
1066
-
1067
- Existence of the global object location with the property that Object.prototype.toString.call\(location\) evaluates to a string that starts with "\[object " and ends with "Location\]".
1068
-
1069
- #### Remarks
1070
-
1071
- Available in Chrome, Edge, Firefox, Safari, Opera, and Android Browser.
1072
-
1073
- #### Inherited from
1074
-
1075
- [`FeatureAll`](FeatureAll.md).[`LOCATION`](FeatureAll.md#location)
1076
-
1077
- ***
1078
-
1079
- ### MOZILLA
1080
-
1081
- > **MOZILLA**: [`ElementaryFeature`](ElementaryFeature.md)
1082
-
1083
- Existence of user agent string navigator.userAgent that starts with "Mozilla".
1084
-
1085
- #### Remarks
1086
-
1087
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser.
1088
-
1089
- #### Inherited from
1090
-
1091
- [`FeatureAll`](FeatureAll.md).[`MOZILLA`](FeatureAll.md#mozilla)
1092
-
1093
- ***
1094
-
1095
- ### NAME
1096
-
1097
- > **NAME**: [`ElementaryFeature`](ElementaryFeature.md)
1098
-
1099
- Existence of the name property for functions.
1100
-
1101
- #### Remarks
1102
-
1103
- Available in Chrome, Edge, Firefox, Safari, Opera, Android Browser, and Node.js.
1104
-
1105
- #### Inherited from
1106
-
1107
- [`FeatureAll`](FeatureAll.md).[`NAME`](FeatureAll.md#name)
1108
-
1109
- ***
1110
-
1111
- ### NO\_FF\_SRC
1112
-
1113
- > **NO\_FF\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
1114
-
1115
- A string representation of native functions typical for V8 or for Internet Explorer but not for Firefox and Safari.
1116
-
1117
- #### Remarks
1118
-
1119
- Available in Chrome, Edge, Internet Explorer, Opera, Android Browser, and Node.js.
1120
-
1121
- #### Inherited from
1122
-
1123
- [`FeatureAll`](FeatureAll.md).[`NO_FF_SRC`](FeatureAll.md#no_ff_src)
1124
-
1125
- ***
1126
-
1127
- ### NO\_IE\_SRC
1128
-
1129
- > **NO\_IE\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
1130
-
1131
- A string representation of native functions typical for most engines with the notable exception of Internet Explorer.
1132
-
1133
- A remarkable trait of this feature is the lack of line feed characters at the beginning and at the end of the string.
1134
-
1135
- #### Remarks
1136
-
1137
- Available in Chrome, Edge, Firefox, Safari, Opera, Android Browser, and Node.js.
1138
-
1139
- #### Inherited from
1140
-
1141
- [`FeatureAll`](FeatureAll.md).[`NO_IE_SRC`](FeatureAll.md#no_ie_src)
1142
-
1143
- ***
1144
-
1145
- ### NO\_OLD\_SAFARI\_ARRAY\_ITERATOR
1146
-
1147
- > **NO\_OLD\_SAFARI\_ARRAY\_ITERATOR**: [`ElementaryFeature`](ElementaryFeature.md)
1148
-
1149
- The property that the string representation of Array.prototype.entries\(\) evaluates to "\[object Array Iterator\]".
1150
-
1151
- #### Remarks
1152
-
1153
- Available in Chrome, Edge, Firefox, Safari 9+, Opera, and Node.js 0.12+.
1154
-
1155
- #### Inherited from
1156
-
1157
- [`FeatureAll`](FeatureAll.md).[`NO_OLD_SAFARI_ARRAY_ITERATOR`](FeatureAll.md#no_old_safari_array_iterator)
1158
-
1159
- ***
1160
-
1161
- ### NO\_V8\_SRC
735
+ ### NO\_V8\_SRC
1162
736
 
1163
737
  > **NO\_V8\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
1164
738
 
@@ -1176,111 +750,15 @@ Available in Firefox, Internet Explorer, and Safari.
1176
750
 
1177
751
  ***
1178
752
 
1179
- ### NODE\_0\_10
1180
-
1181
- > **NODE\_0\_10**: [`PredefinedFeature`](PredefinedFeature.md)
1182
-
1183
- Features available in Node.js 0.10.
1184
-
1185
- #### Inherited from
1186
-
1187
- [`FeatureAll`](FeatureAll.md).[`NODE_0_10`](FeatureAll.md#node_0_10)
1188
-
1189
- ***
1190
-
1191
- ### NODE\_0\_12
1192
-
1193
- > **NODE\_0\_12**: [`PredefinedFeature`](PredefinedFeature.md)
1194
-
1195
- Features available in Node.js 0.12.
1196
-
1197
- #### Inherited from
1198
-
1199
- [`FeatureAll`](FeatureAll.md).[`NODE_0_12`](FeatureAll.md#node_0_12)
1200
-
1201
- ***
1202
-
1203
- ### NODE\_10
753
+ ### NODE\_20
1204
754
 
1205
- > **NODE\_10**: [`PredefinedFeature`](PredefinedFeature.md)
755
+ > **NODE\_20**: [`PredefinedFeature`](PredefinedFeature.md)
1206
756
 
1207
- Features available in Node.js 10.
757
+ Features available in Node.js 20 to 21.
1208
758
 
1209
759
  #### Inherited from
1210
760
 
1211
- [`FeatureAll`](FeatureAll.md).[`NODE_10`](FeatureAll.md#node_10)
1212
-
1213
- ***
1214
-
1215
- ### NODE\_11
1216
-
1217
- > **NODE\_11**: [`PredefinedFeature`](PredefinedFeature.md)
1218
-
1219
- Features available in Node.js 11.
1220
-
1221
- #### Inherited from
1222
-
1223
- [`FeatureAll`](FeatureAll.md).[`NODE_11`](FeatureAll.md#node_11)
1224
-
1225
- ***
1226
-
1227
- ### NODE\_12
1228
-
1229
- > **NODE\_12**: [`PredefinedFeature`](PredefinedFeature.md)
1230
-
1231
- Features available in Node.js 12.
1232
-
1233
- #### Inherited from
1234
-
1235
- [`FeatureAll`](FeatureAll.md).[`NODE_12`](FeatureAll.md#node_12)
1236
-
1237
- ***
1238
-
1239
- ### NODE\_13
1240
-
1241
- > **NODE\_13**: [`PredefinedFeature`](PredefinedFeature.md)
1242
-
1243
- Features available in Node.js 13 and Node.js 14.
1244
-
1245
- #### Inherited from
1246
-
1247
- [`FeatureAll`](FeatureAll.md).[`NODE_13`](FeatureAll.md#node_13)
1248
-
1249
- ***
1250
-
1251
- ### NODE\_15
1252
-
1253
- > **NODE\_15**: [`PredefinedFeature`](PredefinedFeature.md)
1254
-
1255
- Features available in Node.js 15.
1256
-
1257
- #### Inherited from
1258
-
1259
- [`FeatureAll`](FeatureAll.md).[`NODE_15`](FeatureAll.md#node_15)
1260
-
1261
- ***
1262
-
1263
- ### NODE\_16\_0
1264
-
1265
- > **NODE\_16\_0**: [`PredefinedFeature`](PredefinedFeature.md)
1266
-
1267
- Features available in Node.js 16.0 to 16.5.
1268
-
1269
- #### Inherited from
1270
-
1271
- [`FeatureAll`](FeatureAll.md).[`NODE_16_0`](FeatureAll.md#node_16_0)
1272
-
1273
- ***
1274
-
1275
- ### NODE\_16\_6
1276
-
1277
- > **NODE\_16\_6**: [`PredefinedFeature`](PredefinedFeature.md)
1278
-
1279
- Features available in Node.js 16.6 to 21.
1280
-
1281
- #### Inherited from
1282
-
1283
- [`FeatureAll`](FeatureAll.md).[`NODE_16_6`](FeatureAll.md#node_16_6)
761
+ [`FeatureAll`](FeatureAll.md).[`NODE_20`](FeatureAll.md#node_20)
1284
762
 
1285
763
  ***
1286
764
 
@@ -1308,72 +786,6 @@ Features available in Node.js 22.12 to 22.14 and Node.js 23.3 or later.
1308
786
 
1309
787
  ***
1310
788
 
1311
- ### NODE\_4
1312
-
1313
- > **NODE\_4**: [`PredefinedFeature`](PredefinedFeature.md)
1314
-
1315
- Features available in Node.js 4.
1316
-
1317
- #### Inherited from
1318
-
1319
- [`FeatureAll`](FeatureAll.md).[`NODE_4`](FeatureAll.md#node_4)
1320
-
1321
- ***
1322
-
1323
- ### NODE\_5
1324
-
1325
- > **NODE\_5**: [`PredefinedFeature`](PredefinedFeature.md)
1326
-
1327
- Features available in Node.js 5 to 7.5.
1328
-
1329
- #### Inherited from
1330
-
1331
- [`FeatureAll`](FeatureAll.md).[`NODE_5`](FeatureAll.md#node_5)
1332
-
1333
- ***
1334
-
1335
- ### NODE\_7\_6
1336
-
1337
- > **NODE\_7\_6**: [`PredefinedFeature`](PredefinedFeature.md)
1338
-
1339
- Features available in Node.js 7.6 to 9.
1340
-
1341
- #### Inherited from
1342
-
1343
- [`FeatureAll`](FeatureAll.md).[`NODE_7_6`](FeatureAll.md#node_7_6)
1344
-
1345
- ***
1346
-
1347
- ### NODE\_NAME
1348
-
1349
- > **NODE\_NAME**: [`ElementaryFeature`](ElementaryFeature.md)
1350
-
1351
- Existence of the string document.nodeName that starts with a number sign \("#"\).
1352
-
1353
- An alias for `ANY_DOCUMENT`.
1354
-
1355
- #### Inherited from
1356
-
1357
- [`FeatureAll`](FeatureAll.md).[`NODE_NAME`](FeatureAll.md#node_name)
1358
-
1359
- ***
1360
-
1361
- ### NODECONSTRUCTOR
1362
-
1363
- > **NODECONSTRUCTOR**: [`ElementaryFeature`](ElementaryFeature.md)
1364
-
1365
- Existence of the global object Node having the string representation "\[object NodeConstructor\]".
1366
-
1367
- #### Remarks
1368
-
1369
- Available in Safari before 10.0. This feature is not available inside web workers.
1370
-
1371
- #### Inherited from
1372
-
1373
- [`FeatureAll`](FeatureAll.md).[`NODECONSTRUCTOR`](FeatureAll.md#nodeconstructor)
1374
-
1375
- ***
1376
-
1377
789
  ### OBJECT\_ARRAY\_ENTRIES\_CTOR
1378
790
 
1379
791
  > **OBJECT\_ARRAY\_ENTRIES\_CTOR**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -1382,7 +794,7 @@ The property that the Array.prototype.entries\(\).constructor is the Object cons
1382
794
 
1383
795
  #### Remarks
1384
796
 
1385
- Available in Firefox before 131, Safari 9+ before 18.4, and Node.js 0.12+ before 22.0.
797
+ Available in Firefox before 131, Safari before 18.4, and Node.js before 22.0.
1386
798
 
1387
799
  #### Inherited from
1388
800
 
@@ -1390,38 +802,6 @@ Available in Firefox before 131, Safari 9+ before 18.4, and Node.js 0.12+ before
1390
802
 
1391
803
  ***
1392
804
 
1393
- ### OBJECT\_L\_LOCATION\_CTOR
1394
-
1395
- > **OBJECT\_L\_LOCATION\_CTOR**: [`ElementaryFeature`](ElementaryFeature.md)
1396
-
1397
- Existence of the global function location.constructor whose string representation starts with "\[object L".
1398
-
1399
- #### Remarks
1400
-
1401
- Available in Internet Explorer and Safari before 10.0. This feature is not available inside web workers.
1402
-
1403
- #### Inherited from
1404
-
1405
- [`FeatureAll`](FeatureAll.md).[`OBJECT_L_LOCATION_CTOR`](FeatureAll.md#object_l_location_ctor)
1406
-
1407
- ***
1408
-
1409
- ### OBJECT\_UNDEFINED
1410
-
1411
- > **OBJECT\_UNDEFINED**: [`ElementaryFeature`](ElementaryFeature.md)
1412
-
1413
- Having the function Object.prototype.toString return the string "\[object Undefined\]" when invoked without a binding.
1414
-
1415
- #### Remarks
1416
-
1417
- Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Android Browser 4.1+, and Node.js.
1418
-
1419
- #### Inherited from
1420
-
1421
- [`FeatureAll`](FeatureAll.md).[`OBJECT_UNDEFINED`](FeatureAll.md#object_undefined)
1422
-
1423
- ***
1424
-
1425
805
  ### OBJECT\_W\_SELF
1426
806
 
1427
807
  > **OBJECT\_W\_SELF**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -1430,7 +810,7 @@ The property that the string representation of the global object self starts wit
1430
810
 
1431
811
  #### Remarks
1432
812
 
1433
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser 4.4. This feature is not available inside web workers in Chrome, Edge, Firefox, Safari, Opera, and Android Browser 4.4.
813
+ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, and Opera. This feature is not available inside web workers in Chrome, Edge, Firefox, Safari, and Opera.
1434
814
 
1435
815
  #### Inherited from
1436
816
 
@@ -1438,22 +818,6 @@ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Androi
1438
818
 
1439
819
  ***
1440
820
 
1441
- ### OLD\_SAFARI\_LOCATION\_CTOR
1442
-
1443
- > **OLD\_SAFARI\_LOCATION\_CTOR**: [`ElementaryFeature`](ElementaryFeature.md)
1444
-
1445
- Existence of the global object location.constructor whose string representation starts with "\[object " and ends with "LocationConstructor\]".
1446
-
1447
- #### Remarks
1448
-
1449
- Available in Safari before 10.0.
1450
-
1451
- #### Inherited from
1452
-
1453
- [`FeatureAll`](FeatureAll.md).[`OLD_SAFARI_LOCATION_CTOR`](FeatureAll.md#old_safari_location_ctor)
1454
-
1455
- ***
1456
-
1457
821
  ### PLAIN\_INTL
1458
822
 
1459
823
  > **PLAIN\_INTL**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -1462,7 +826,7 @@ Existence of the global object Intl having the string representation "\[object O
1462
826
 
1463
827
  #### Remarks
1464
828
 
1465
- Available in Internet Explorer 11, Safari 10.0+ before 14.0.1, Android Browser 4.4, and Node.js 0.12+ before 15.
829
+ Available in Internet Explorer.
1466
830
 
1467
831
  #### Inherited from
1468
832
 
@@ -1478,7 +842,7 @@ The property that the string representation of String.prototype.matchAll\(\) eva
1478
842
 
1479
843
  #### Remarks
1480
844
 
1481
- Available in Chrome, Edge, Firefox, Safari 13+, Opera, and Node.js 12+.
845
+ Available in Chrome, Edge, Firefox, Safari, Opera, and Node.js.
1482
846
 
1483
847
  #### Inherited from
1484
848
 
@@ -1500,95 +864,19 @@ An alias for `SAFARI_18_4`.
1500
864
 
1501
865
  ***
1502
866
 
1503
- ### SAFARI\_10\_0
1504
-
1505
- > **SAFARI\_10\_0**: [`PredefinedFeature`](PredefinedFeature.md)
1506
-
1507
- Features available in Safari 10.0.
1508
-
1509
- #### Inherited from
1510
-
1511
- [`FeatureAll`](FeatureAll.md).[`SAFARI_10_0`](FeatureAll.md#safari_10_0)
1512
-
1513
- ***
1514
-
1515
- ### SAFARI\_10\_1
1516
-
1517
- > **SAFARI\_10\_1**: [`PredefinedFeature`](PredefinedFeature.md)
1518
-
1519
- Features available in Safari 10.1 and Safari 11.
1520
-
1521
- #### Inherited from
1522
-
1523
- [`FeatureAll`](FeatureAll.md).[`SAFARI_10_1`](FeatureAll.md#safari_10_1)
1524
-
1525
- ***
1526
-
1527
- ### SAFARI\_12
1528
-
1529
- > **SAFARI\_12**: [`PredefinedFeature`](PredefinedFeature.md)
1530
-
1531
- Features available in Safari 12.
1532
-
1533
- #### Inherited from
1534
-
1535
- [`FeatureAll`](FeatureAll.md).[`SAFARI_12`](FeatureAll.md#safari_12)
1536
-
1537
- ***
1538
-
1539
- ### SAFARI\_13
1540
-
1541
- > **SAFARI\_13**: [`PredefinedFeature`](PredefinedFeature.md)
1542
-
1543
- Features available in Safari 13 and Safari 14.0.0.
1544
-
1545
- #### Inherited from
1546
-
1547
- [`FeatureAll`](FeatureAll.md).[`SAFARI_13`](FeatureAll.md#safari_13)
1548
-
1549
- ***
1550
-
1551
- ### SAFARI\_14\_0\_1
1552
-
1553
- > **SAFARI\_14\_0\_1**: [`PredefinedFeature`](PredefinedFeature.md)
1554
-
1555
- Features available in Safari 14.0.1 to 14.0.3.
1556
-
1557
- #### Inherited from
1558
-
1559
- [`FeatureAll`](FeatureAll.md).[`SAFARI_14_0_1`](FeatureAll.md#safari_14_0_1)
1560
-
1561
- ***
1562
-
1563
- ### SAFARI\_14\_1
1564
-
1565
- > **SAFARI\_14\_1**: [`PredefinedFeature`](PredefinedFeature.md)
1566
-
1567
- Features available in Safari 14.1 to 15.3.
1568
-
1569
- #### Inherited from
1570
-
1571
- [`FeatureAll`](FeatureAll.md).[`SAFARI_14_1`](FeatureAll.md#safari_14_1)
1572
-
1573
- ***
1574
-
1575
- ### SAFARI\_15\_4
1576
-
1577
- > **SAFARI\_15\_4**: [`PredefinedFeature`](PredefinedFeature.md)
1578
-
1579
- Features available in Safari 15.4 to 17.3.
867
+ ### SAFARI\_17\_4
1580
868
 
1581
- #### Inherited from
869
+ > **SAFARI\_17\_4**: [`PredefinedFeature`](PredefinedFeature.md)
1582
870
 
1583
- [`FeatureAll`](FeatureAll.md).[`SAFARI_15_4`](FeatureAll.md#safari_15_4)
871
+ Features available in Safari 17.4 to 17.6.
1584
872
 
1585
- ***
873
+ #### Remarks
1586
874
 
1587
- ### SAFARI\_17\_4
875
+ This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `SAFARI_PRE_PREV` instead of `SAFARI_17_4` for long term support.
1588
876
 
1589
- > **SAFARI\_17\_4**: [`PredefinedFeature`](PredefinedFeature.md)
877
+ #### See
1590
878
 
1591
- Features available in Safari 17.4 to 17.6.
879
+ [Engine Support Policy](https://github.com/fasttime/JScrewIt#engine-support-policy)
1592
880
 
1593
881
  #### Inherited from
1594
882
 
@@ -1602,6 +890,14 @@ Features available in Safari 17.4 to 17.6.
1602
890
 
1603
891
  Features available in Safari 18.0 to 18.3.
1604
892
 
893
+ #### Remarks
894
+
895
+ This feature may be replaced or removed in the near future when current browser versions become obsolete.
896
+
897
+ #### See
898
+
899
+ [Engine Support Policy](https://github.com/fasttime/JScrewIt#engine-support-policy)
900
+
1605
901
  #### Inherited from
1606
902
 
1607
903
  [`FeatureAll`](FeatureAll.md).[`SAFARI_18_0`](FeatureAll.md#safari_18_0)
@@ -1614,45 +910,45 @@ Features available in Safari 18.0 to 18.3.
1614
910
 
1615
911
  Features available in Safari 18.4 or later.
1616
912
 
1617
- #### Inherited from
1618
-
1619
- [`FeatureAll`](FeatureAll.md).[`SAFARI_18_4`](FeatureAll.md#safari_18_4)
1620
-
1621
- ***
913
+ #### Remarks
1622
914
 
1623
- ### SAFARI\_7\_0
915
+ This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `SAFARI` or `SAFARI_PREV` instead of `SAFARI_18_4` for long term support.
1624
916
 
1625
- > **SAFARI\_7\_0**: [`PredefinedFeature`](PredefinedFeature.md)
917
+ #### See
1626
918
 
1627
- Features available in Safari 7.0.
919
+ [Engine Support Policy](https://github.com/fasttime/JScrewIt#engine-support-policy)
1628
920
 
1629
921
  #### Inherited from
1630
922
 
1631
- [`FeatureAll`](FeatureAll.md).[`SAFARI_7_0`](FeatureAll.md#safari_7_0)
923
+ [`FeatureAll`](FeatureAll.md).[`SAFARI_18_4`](FeatureAll.md#safari_18_4)
1632
924
 
1633
925
  ***
1634
926
 
1635
- ### SAFARI\_7\_1
927
+ ### SAFARI\_PRE\_PREV
1636
928
 
1637
- > **SAFARI\_7\_1**: [`PredefinedFeature`](PredefinedFeature.md)
929
+ > **SAFARI\_PRE\_PREV**: [`PredefinedFeature`](PredefinedFeature.md)
1638
930
 
1639
- Features available in Safari 7.1 and Safari 8.
931
+ Features available in the previous to previous version of Safari.
932
+
933
+ An alias for `SAFARI_17_4`.
1640
934
 
1641
935
  #### Inherited from
1642
936
 
1643
- [`FeatureAll`](FeatureAll.md).[`SAFARI_7_1`](FeatureAll.md#safari_7_1)
937
+ [`FeatureAll`](FeatureAll.md).[`SAFARI_PRE_PREV`](FeatureAll.md#safari_pre_prev)
1644
938
 
1645
939
  ***
1646
940
 
1647
- ### SAFARI\_9
941
+ ### SAFARI\_PREV
942
+
943
+ > **SAFARI\_PREV**: [`PredefinedFeature`](PredefinedFeature.md)
1648
944
 
1649
- > **SAFARI\_9**: [`PredefinedFeature`](PredefinedFeature.md)
945
+ Features available in the previous to current version of Safari.
1650
946
 
1651
- Features available in Safari 9.
947
+ An alias for `SAFARI_18_4`.
1652
948
 
1653
949
  #### Inherited from
1654
950
 
1655
- [`FeatureAll`](FeatureAll.md).[`SAFARI_9`](FeatureAll.md#safari_9)
951
+ [`FeatureAll`](FeatureAll.md).[`SAFARI_PREV`](FeatureAll.md#safari_prev)
1656
952
 
1657
953
  ***
1658
954
 
@@ -1660,27 +956,15 @@ Features available in Safari 9.
1660
956
 
1661
957
  > **SELF**: [`ElementaryFeature`](ElementaryFeature.md)
1662
958
 
1663
- An alias for `ANY_WINDOW`.
1664
-
1665
- #### Inherited from
1666
-
1667
- [`FeatureAll`](FeatureAll.md).[`SELF`](FeatureAll.md#self)
1668
-
1669
- ***
1670
-
1671
- ### SELF\_OBJ
1672
-
1673
- > **SELF\_OBJ**: [`ElementaryFeature`](ElementaryFeature.md)
1674
-
1675
959
  Existence of the global object self whose string representation starts with "\[object ".
1676
960
 
1677
961
  #### Remarks
1678
962
 
1679
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser. This feature is not available inside web workers in Safari 7.1+ before 10.0.
963
+ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, and Opera.
1680
964
 
1681
965
  #### Inherited from
1682
966
 
1683
- [`FeatureAll`](FeatureAll.md).[`SELF_OBJ`](FeatureAll.md#self_obj)
967
+ [`FeatureAll`](FeatureAll.md).[`SELF`](FeatureAll.md#self)
1684
968
 
1685
969
  ***
1686
970
 
@@ -1692,7 +976,7 @@ Support for the two-letter locale name "ar" to format decimal numbers as Arabic
1692
976
 
1693
977
  #### Remarks
1694
978
 
1695
- Available in Firefox before 134, Internet Explorer 11, Safari 10.0+ before 18.0, Android Browser 4.4, and Node.js 13+ before 22.12–22.14 and 23.3.
979
+ Available in Firefox before 134, Internet Explorer, Safari before 18.0, and Node.js before 22.12–22.14 and 23.3.
1696
980
 
1697
981
  #### Inherited from
1698
982
 
@@ -1708,7 +992,7 @@ Existence of the global string status.
1708
992
 
1709
993
  #### Remarks
1710
994
 
1711
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser. This feature is not available inside web workers.
995
+ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, and Opera. This feature is not available inside web workers.
1712
996
 
1713
997
  #### Inherited from
1714
998
 
@@ -1716,24 +1000,6 @@ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Androi
1716
1000
 
1717
1001
  ***
1718
1002
 
1719
- ### UNDEFINED
1720
-
1721
- > **UNDEFINED**: [`ElementaryFeature`](ElementaryFeature.md)
1722
-
1723
- The property that Object.prototype.toString.call\(\) evaluates to "\[object Undefined\]".
1724
-
1725
- This behavior is specified by ECMAScript, and is enforced by all engines except Android Browser versions prior to 4.1.2, where this feature is not available.
1726
-
1727
- #### Remarks
1728
-
1729
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, Android Browser 4.1+, and Node.js.
1730
-
1731
- #### Inherited from
1732
-
1733
- [`FeatureAll`](FeatureAll.md).[`UNDEFINED`](FeatureAll.md#undefined)
1734
-
1735
- ***
1736
-
1737
1003
  ### V8\_SRC
1738
1004
 
1739
1005
  > **V8\_SRC**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -1744,7 +1010,7 @@ Remarkable traits are the lack of line feed characters at the beginning and at t
1744
1010
 
1745
1011
  #### Remarks
1746
1012
 
1747
- Available in Chrome, Edge, Opera, Android Browser, and Node.js.
1013
+ Available in Chrome, Edge, Opera, and Node.js.
1748
1014
 
1749
1015
  #### Inherited from
1750
1016
 
@@ -1760,7 +1026,7 @@ Existence of the global object self having the string representation "\[object W
1760
1026
 
1761
1027
  #### Remarks
1762
1028
 
1763
- Available in Chrome, Edge, Firefox, Internet Explorer, Safari, Opera, and Android Browser 4.4. This feature is not available inside web workers.
1029
+ Available in Chrome, Edge, Firefox, Internet Explorer, Safari, and Opera. This feature is not available inside web workers.
1764
1030
 
1765
1031
  #### Inherited from
1766
1032
 
@@ -1857,17 +1123,18 @@ A feature object, or `null` if no arguments are specified.
1857
1123
 
1858
1124
  #### Example
1859
1125
 
1860
- This will create a new feature object equivalent to [\`NAME\`](#name).
1126
+ The following declaration creates a new feature object equivalent to
1127
+ [\`NAME\`](#name).
1861
1128
 
1862
1129
  ```js
1863
- const newFeature = JScrewIt.Feature.commonOf(["ATOB", "NAME"], ["NAME", "SELF"]);
1130
+ const newFeature = JScrewIt.Feature.commonOf(["AT", "NAME"], ["NAME", "WINDOW"]);
1864
1131
  ```
1865
1132
 
1866
- This will create a new feature object equivalent to [FeatureConstructor.ANY\_WINDOW \| \`ANY\_WINDOW\`](#any_window).
1867
- This is because both [\`DOMWINDOW\`](#domwindow) and [\`WINDOW\`](#window) imply [FeatureConstructor.ANY\_WINDOW \| \`ANY\_WINDOW\`](#any_window).
1133
+ The following declaration creates a new feature object equivalent to [\`NO\_IE\_SRC\`](#no_ie_src).
1134
+ This is because both [\`FF\_SRC\`](#ff_src) and [\`V8\_SRC\`](#v8_src) imply [\`NO\_IE\_SRC\`](#no_ie_src).
1868
1135
 
1869
1136
  ```js
1870
- const newFeature = JScrewIt.Feature.commonOf("DOMWINDOW", "WINDOW");
1137
+ const newFeature = JScrewIt.Feature.commonOf("FF_SRC", "V8_SRC");
1871
1138
  ```
1872
1139
 
1873
1140
  ***