nl_tokens: Appends the arguments to the end of the array and returns the new length of the array . See ECMA - 262 section 15 . 4 . 4 . 7 .
pl_tokens: function ArrayPush ( ) { CHECK_OBJECT_COERCIBLE ( this , "Array.prototype.push" ) ; var array = TO_OBJECT ( this ) ; var n = TO_LENGTH ( array . length ) ; var m = arguments . length ; // Subtract n from kMaxSafeInteger rather than testing m + n > // kMaxSafeInteger. n may already be kMaxSafeInteger. In that case adding // e.g., 1 would not be safe. if ( m > kMaxSafeInteger - n ) throw MakeTypeError ( kPushPastSafeLength , m , n ) ; for ( var i = 0 ; i < m ; i ++ ) { array [ i + n ] = arguments [ i ] ; } var new_length = n + m ; <mask> . length = new_length ; return new_length ; }