Object.setIndexedPropertiesToExternalArrayData=sets ByteBuffer to hold indexed data (nashorn extension)

Object.getPrototypeOf=returns the prototype of the specified object

Object.setPrototypeOf=sets the prototype of the given object (ES6)

Object.getOwnPropertyDescriptor=returns a property descriptor for an own property (not inherited property)

Object.getOwnPropertyNames=returns an array of all properties (enumerable or not) found directly on the given object

Object.getOwnPropertySymbols=returns an array of all symbol properties found directly on the given object (ES6)

Object.create=creates a new object with the specified prototype object and properties

Object.defineProperty=adds an own property and/or update the attributes of an existing own property of an object

Object.defineProperties=defines new or modifies existing properties directly on the given object

Object.seal=prevents new properties from being added to the given object and marks existing properties as non-configurable

Object.freeze=prevents new properties from being added to the given object and prevents existing properties from being removed or re-configured

Object.preventExtensions=prevents new properties from ever being added to the given object

Object.isSealed=tells if an object is sealed or not

Object.isFrozen=tells if an object is frozen or not

Object.isExtensible=tells if an object is extensible or not

Object.keys=returns an array of the given object's own enumerable properties

Object=creates a new script object or converts given value as a script object

Object.prototype.toString=returns a string representation of this object

Object.prototype.hasOwnProperty=tells whether this object has the specified property or not

Object.prototype.isPrototypeOf=tests for this object in another object's prototype chain

Object.prototype.propertyIsEnumerable=tells whether the given property is enumerable or not

Object.bindProperties=binds the source object's properties to the target object (nashorn extension)

Array.isArray=tells whether the argument is an array

Array.prototype.toString=returns a string representation of this array

Array.prototype.assertNumeric=asserts that the array is numeric, throws a type error if this is not the case

Array.prototype.toLocaleString=returns a locale-specific string representation of this array

Array=creates a new array

Array.prototype.concat=concatenates arrays

Array.prototype.join=returns a string representation of the array, with a separator placed between elements

Array.prototype.pop=returns the element from the end of the array, or undefined

Array.prototype.push=appends an element to the end of the array

Array.prototype.reverse=reverses the array

Array.prototype.shift=removes the first element from the array and returns that element

Array.prototype.slice=returns a shallow copy of a slice of the array

Array.prototype.sort=sorts the array

Array.prototype.splice=changes the content of the array by removing and/or adding elements

Array.prototype.unshift=adds one or more elements to the beginning of the array

Array.prototype.indexOf=retrieves the first index of an element in the array, or -1 if the element is not found

Array.prototype.lastIndexOf=retrieves the last index of an element in the array, or -1 if the element is not found

Array.prototype.every=applies a predicate to all elements of the array, returns true if the predicate evaluates to true for all

Array.prototype.some=tests whether a predicate evaluates to true for some element in the array

Array.prototype.forEach=applies a function to all elements in the array

Array.prototype.map=applies a function to all elements in the array, returns the array of results

Array.prototype.filter=returns an array with those elements from this array that match a filter function

Array.prototype.reduce=applies a left-fold to the array and returns the result

Array.prototype.reduceRight=applies a right-fold to the array and returns the result

Function=creates a new function with the given parameters and function body

Function.prototype.toString=returns a string representation of this function

Function.prototype.apply=invokes the function with the given this-reference and arguments array

Function.prototype.call=invokes the function with the given this-reference and arguments

Function.prototype.bind=returns a new function with bound this-reference and arguments
