VOOZH about

URL: https://tc39.es/proposal-bigint/

⇱ BigInt


Pins
Table of Contents
  1. Introduction
  2. 1 Numeric Types
    1. 1.1 The BigInt Type
      1. 1.1.1 BigInt::unaryMinus (x)
      2. 1.1.2 BigInt::bitwiseNOT (x)
      3. 1.1.3 BigInt::exponentiate (base, exponent)
      4. 1.1.4 BigInt::multiply (x, y)
      5. 1.1.5 BigInt::divide (x, y)
      6. 1.1.6 BigInt::remainder (n, d)
      7. 1.1.7 BigInt::add (x, y)
      8. 1.1.8 BigInt::subtract (x, y)
      9. 1.1.9 BigInt::leftShift (x, y)
      10. 1.1.10 BigInt::signedRightShift (x, y)
      11. 1.1.11 BigInt::unsignedRightShift (x, y)
      12. 1.1.12 BigInt::lessThan (x, y)
      13. 1.1.13 BigInt::equal (x, y)
      14. 1.1.14 BigInt::sameValue (x, y)
      15. 1.1.15 BigInt::sameValueZero (x, y)
      16. 1.1.16 BitwiseOp(op, x, y)
      17. 1.1.17 BigInt::bitwiseAND (x, y)
      18. 1.1.18 BigInt::bitwiseXOR (x, y)
      19. 1.1.19 BigInt::bitwiseOR (x, y)
  3. 2 Modifications to the Number grammar
    1. 2.1 SS: BigInt Value
    2. 2.2 SS: Number Value
  4. 3 Abstract Operations
    1. 3.1 Type Conversion
      1. 3.1.1 ToPrimitive ( input [ , PreferredType ] )
      2. 3.1.2 ToBoolean ( argument )
      3. 3.1.3 ToNumber ( argument )
        1. 3.1.3.1 ToNumber Applied to the String Type
      4. 3.1.4 ToString ( argument )
        1. 3.1.4.1 ToString Applied to the BigInt Type
      5. 3.1.5 ToObject ( argument )
      6. 3.1.6 ToNumeric ( value )
      7. 3.1.7 RequireObjectCoercible ( argument )
    2. 3.2 Testing and Comparison Operations
      1. 3.2.1 SameValue ( x, y )
      2. 3.2.2 SameValueZero ( x, y )
      3. 3.2.3 SameValueNon ( x, y )
      4. 3.2.4 Abstract Relational Comparison
      5. 3.2.5 Abstract Equality Comparison
      6. 3.2.6 Strict Equality Comparison
  5. 4 ECMAScript Language: Expressions
    1. 4.1 Update Expressions
      1. 4.1.1 Postfix Increment Operator
        1. 4.1.1.1 RS: Evaluation
      2. 4.1.2 Postfix Decrement Operator
        1. 4.1.2.1 RS: Evaluation
      3. 4.1.3 Prefix Increment Operator
        1. 4.1.3.1 RS: Evaluation
      4. 4.1.4 Prefix Decrement Operator
        1. 4.1.4.1 RS: Evaluation
    2. 4.2 Unary Operators
      1. 4.2.1 The typeof Operator
        1. 4.2.1.1 RS: Evaluation
      2. 4.2.2 Unary + Operator
        1. 4.2.2.1 RS: Evaluation
      3. 4.2.3 Unary - Operator
        1. 4.2.3.1 RS: Evaluation
      4. 4.2.4 Bitwise NOT Operator ( ~ )
        1. 4.2.4.1 RS: Evaluation
    3. 4.3 Exponentiation Operator
      1. 4.3.1 RS: Evaluation
    4. 4.4 Multiplicative Operators
      1. 4.4.1 RS: Evaluation
    5. 4.5 Additive Operators
      1. 4.5.1 The Addition Operator ( + )
        1. 4.5.1.1 RS: Evaluation
      2. 4.5.2 The Subtraction Operator ( - )
        1. 4.5.2.1 RS: Evaluation
    6. 4.6 Bitwise Shift Operators
      1. 4.6.1 The Left Shift Operator ( << )
        1. 4.6.1.1 RS: Evaluation
      2. 4.6.2 The Signed Right Shift Operator ( >> )
        1. 4.6.2.1 RS: Evaluation
      3. 4.6.3 The Unsigned Right Shift Operator ( >>> )
        1. 4.6.3.1 RS: Evaluation
    7. 4.7 Binary Bitwise Operators
      1. 4.7.1 RS: Evaluation
  6. 5 BigInt Objects
    1. 5.1 The BigInt Constructor
      1. 5.1.1 IsInteger ( number )
      2. 5.1.2 NumberToBigInt ( number )
      3. 5.1.3 BigInt ( value )
    2. 5.2 Properties of the BigInt Constructor
      1. 5.2.1 BigInt.asUintN ( bits, bigint )
      2. 5.2.2 BigInt.asIntN ( bits, bigint )
      3. 5.2.3 BigInt.prototype
    3. 5.3 Properties of the BigInt Prototype Object
      1. 5.3.1 BigInt.prototype.constructor
      2. 5.3.2 BigInt.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )
      3. 5.3.3 BigInt.prototype.toString ( [ radix ] )
      4. 5.3.4 BigInt.prototype.valueOf ( )
      5. 5.3.5 BigInt.prototype [ @@toStringTag ]
  7. 6 Modified algorithms
    1. 6.1 RS: SerializeJSONProperty ( key, holder )
    2. 6.2 Number ( value )
    3. 6.3 Math.pow ( base, exponent )
  8. 7 TypedArrays and DataViews
    1. 7.1 TypedArray Objects
    2. 7.2 StringToBigInt ( argument )
    3. 7.3 ToBigInt ( argument )
    4. 7.4 ToBigInt64 ( argument )
    5. 7.5 ToBigUint64 ( argument )
    6. 7.6 RawBytesTo( type, rawBytes, isLittleEndian )
    7. 7.7 ToRawBytes( type, value, isLittleEndian )
    8. 7.8 IntegerIndexedElementSet ( O, index, value )
    9. 7.9 SetValueInBuffer ( arrayBuffer, byteIndex, type, value, isTypedArray, order [ , isLittleEndian ] )
    10. 7.10 GetValueFromBuffer ( arrayBuffer, byteIndex, type, isTypedArray, order [ , isLittleEndian ] )
    11. 7.11 GetModifySetValueInBuffer( arrayBuffer, byteIndex, type, value, op [ , isLittleEndian ] )
    12. 7.12 ValidateSharedIntegerTypedArray(typedArray [ , waitable ] )
    13. 7.13 AtomicReadModifyWrite( typedArray, index, value, op )
    14. 7.14 Atomics.compareExchange ( typedArray, index, expectedValue, replacementValue )
    15. 7.15 Atomics.isLockFree( size )
    16. 7.16 Atomics.wait( typedArray, index, value, timeout )
    17. 7.17 Atomics.notify( typedArray, index, count )
    18. 7.18 Atomics.store( typedArray, index, value )
    19. 7.19 %TypedArray%.prototype.sort ( comparefn )
    20. 7.20 TypedArraySpeciesCreate ( exemplar, argumentList )
    21. 7.21 %TypedArray%.prototype.fill ( value [ , start [ , end ] ] )
    22. 7.22 %TypedArray%.prototype.set ( array [ , offset ] )
    23. 7.23 %TypedArray%.prototype.set( typedArray [ , offset ] )
    24. 7.24 TypedArray ( typedArray )
    25. 7.25 SetViewValue ( view, requestIndex, isLittleEndian, type, value )
    26. 7.26 DataView.prototype.getBigInt64 ( byteOffset [ , littleEndian ] )
    27. 7.27 DataView.prototype.getBigUint64 ( byteOffset [ , littleEndian ] )
    28. 7.28 DataView.prototype.setBigInt64 ( byteOffset, value [ , littleEndian ] )
    29. 7.29 DataView.prototype.setBigUint64 ( byteOffset, value [ , littleEndian ] )
  9. 8 Agents

Stage 4 Draft / September 30, 2019

BigInt