NativeScript | Desktop browsers | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Feature name | Current browser | NS 6.5 Android v8 |
NS 7.0 Android v8 |
NS 8.0 Android v8 |
NS 6.5 iOS JSC |
NS 7.0 iOS v8 |
NS 8.0 iOS v8 |
CH 89 | CH 90 | SF 14 Beta | SF TP | |
§SIMD (Single Instruction, Multiple Data) | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | ||
§basic support | No | No | No | No | No | No | No | No | ? | ? | ||
§Float32x4 | No | No | No | No | No | No | No | No | ? | ? | ||
§Int32x4 | No | No | No | No | No | No | No | No | ? | ? | ||
§Int16x8 | No | No | No | No | No | No | No | No | ? | ? | ||
§Int8x16 | No | No | No | No | No | No | No | No | ? | ? | ||
§Uint32x4 | No | No | No | No | No | No | No | No | ? | ? | ||
§Uint16x8 | No | No | No | No | No | No | No | No | ? | ? | ||
§Uint8x16 | No | No | No | No | No | No | No | No | ? | ? | ||
§Bool32x4 | No | No | No | No | No | No | No | No | ? | ? | ||
§Bool16x8 | No | No | No | No | No | No | No | No | ? | ? | ||
§Bool8x16 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.abs | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.add | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%integerType%.addSaturate | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.and | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%booleanType%.anyTrue | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%booleanType%.allTrue | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.check | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.equal | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.extractLane | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.greaterThan | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.greaterThanOrEqual | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.lessThan | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.lessThanOrEqual | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.mul | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.div | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.load | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.load1 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.load2 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.load3 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.max | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.maxNum | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.min | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.minNum | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.neg | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.not | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.notEqual | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.or | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.reciprocalApproximation | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.reciprocalSqrtApproximation | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.replaceLane | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.select | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%integerType%.shiftLeftByScalar | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%integerType%.shiftRightByScalar | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.shuffle | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.splat | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%floatType%.sqrt | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.store | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.store1 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.store2 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.store3 | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.sub | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%integerType%.subSaturate | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.swizzle | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.xor | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.fromTIMDBits | No | No | No | No | No | No | No | No | ? | ? | ||
§SIMD.%type%.fromTIMD | No | No | No | No | No | No | No | No | ? | ? | ||
§decompilation | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | ||
§uneval, existence | No | No | No | No | No | No | No | No | ? | ? | ||
§built-in "toSource" methods | No | No | No | No | No | No | No | No | ? | ? | ||
§"toSource" method as hook for uneval | No | No | No | No | No | No | No | No | ? | ? | ||
§eval(uneval(value)) is functionally equivalent to value | No | No | No | No | No | No | No | No | ? | ? | ||
§optional "scope" argument of "eval" | No | No | No | No | No | No | No | No | ? | ? | ||
§function "caller" property | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§function "arity" property | No | No | No | No | No | No | No | No | No | No | ||
§function "arguments" property | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§Function.prototype.isGenerator | No | No | No | No | No | No | No | No | No | No | ||
§class extends null | No | No | No | No | No | No | No | No | No | No | ||
§__count__ | No | No | No | No | No | No | No | No | No | No | ||
§__parent__ | No | No | No | No | No | No | No | No | No | No | ||
§__noSuchMethod__ | No | No | No | No | No | No | No | No | No | No | ||
§Array generics | No | No | No | No | No | No | No | No | No | No | ||
§String generics | No | No | No | No | No | No | No | No | No | No | ||
§Array comprehensions (JS 1.8 style) | No | No | No | No | No | No | No | No | No | No | ||
§Array comprehensions (ES draft style) | No | No | No | No | No | No | No | No | ? | ? | ||
§Expression closures | No | No | No | No | No | No | No | No | No | No | ||
§ECMAScript for XML (E4X) | No | No | No | No | No | No | No | No | No | No | ||
§"for each..in" loops | No | No | No | No | No | No | No | No | No | No | ||
§Sharp variables | No | No | No | No | No | No | No | No | No | No | ||
§Iterator | No | No | No | No | No | No | No | No | No | No | ||
§__iterator__ | No | No | No | No | No | No | No | No | No | No | ||
§Generators (JS 1.8) | No | No | No | No | No | No | No | No | No | No | ||
§Generator comprehensions (JS 1.8 style) | No | No | No | No | No | No | No | No | No | No | ||
§Generator comprehensions (ES draft style) | No | No | No | No | No | No | No | No | ? | ? | ||
§RegExp "x" flag | No | No | No | No | No | No | No | No | No | No | ||
§Callable RegExp | No | No | No | No | No | No | No | No | No | No | ||
§RegExp named groups | No | No | No | No | No | No | No | No | No | No | ||
§String.prototype.quote | No | No | No | No | No | No | No | No | No | No | ||
§String.prototype.replace flags | No | No | No | No | No | No | No | No | ? | ? | ||
§Date.prototype.toLocaleFormat | No | No | No | No | No | No | No | No | No | No | ||
§Date.parse produces NaN for invalid dates | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
§Object.prototype.watch | No | No | No | No | No | No | No | No | No | No | ||
§Object.prototype.unwatch | No | No | No | No | No | No | No | No | No | No | ||
§Object.prototype.eval | No | No | No | No | No | No | No | No | No | No | ||
§Object.observe | No | No | No | No | No | No | No | No | ? | ? | ||
§error "stack" | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§error "lineNumber" | No | No | No | No | No | No | No | No | No | No | ||
§error "columnNumber" | No | No | No | No | No | No | No | No | No | No | ||
§error "fileName" | No | No | No | No | No | No | No | No | No | No | ||
§error "description" | No | No | No | No | No | No | No | No | No | No | ||
§global | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 0/2 | 0/2 | 0/2 | 0/2 | ||
§"global" global property is global object | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | ||
§"global" global property has correct property descriptor | No | No | No | No | No | No | No | No | No | No | ||
§Proxy "ownKeys" handler, duplicate keys for non-extensible targets (ES 2017 semantics)[1] | No | No | No | No | No | No | No | No | No | No |
[1] The behaviour of the Proxy “ownKeys” handler in presence of duplicate keys has been modified later.