Unsere Freiwilligen haben diesen Artikel noch nicht in Deutsch übersetzt. Machen Sie mit und helfen Sie, das zu erledigen!
The Array.prototype property represents the prototype for the Array constructor.
Property attributes of Array.prototype |
|
|---|---|
| Writable | no |
| Enumerable | no |
| Configurable | no |
Description
Array instances inherit from Array.prototype. As with all constructors, you can change the constructor's prototype object to make changes to all Array instances.
Little known fact: Array.prototype itself is an Array:
Array.isArray(Array.prototype); // true
Properties
Array.prototype.constructor- Specifies the function that creates an object's prototype.
Array.prototype.length- Reflects the number of elements in an array.
Array.prototype[@@unscopables]- A symbol containing property names to exclude from a
withbinding scope.
Methods
Mutator methods
These methods modify the array:
Array.prototype.copyWithin()- Copies a sequence of array elements within the array.
Array.prototype.fill()- Fills all the elements of an array from a start index to an end index with a static value.
Array.prototype.pop()- Removes the last element from an array and returns that element.
Array.prototype.push()- Adds one or more elements to the end of an array and returns the new length of the array.
Array.prototype.reverse()- Reverses the order of the elements of an array in place — the first becomes the last, and the last becomes the first.
Array.prototype.shift()- Removes the first element from an array and returns that element.
Array.prototype.sort()- Sorts the elements of an array in place and returns the array.
Array.prototype.splice()- Adds and/or removes elements from an array.
Array.prototype.unshift()- Adds one or more elements to the front of an array and returns the new length of the array.
Accessor methods
These methods do not modify the array and return some representation of the array.
Array.prototype.concat()- Returns a new array comprised of this array joined with other array(s) and/or value(s).
Array.prototype.includes()- Determines whether an array contains a certain element, returning
trueorfalseas appropriate. Array.prototype.join()- Joins all elements of an array into a string.
Array.prototype.slice()- Extracts a section of an array and returns a new array.
Array.prototype.toSource()- Returns an array literal representing the specified array; you can use this value to create a new array. Overrides the
Object.prototype.toSource()method. Array.prototype.toString()- Returns a string representing the array and its elements. Overrides the
Object.prototype.toString()method. Array.prototype.toLocaleString()- Returns a localized string representing the array and its elements. Overrides the
Object.prototype.toLocaleString()method. Array.prototype.indexOf()- Returns the first (least) index of an element within the array equal to the specified value, or -1 if none is found.
Array.prototype.lastIndexOf()- Returns the last (greatest) index of an element within the array equal to the specified value, or -1 if none is found.
Iteration methods
Several methods take as arguments functions to be called back while processing the array. When these methods are called, the length of the array is sampled, and any element added beyond this length from within the callback is not visited. Other changes to the array (setting the value of or deleting an element) may affect the results of the operation if the method visits the changed element afterwards. While the specific behavior of these methods in such cases is well-defined, you should not rely upon it so as not to confuse others who might read your code. If you must mutate the array, copy into a new array instead.
Array.prototype.forEach()- Calls a function for each element in the array.
Array.prototype.entries()- Returns a new
Array Iteratorobject that contains the key/value pairs for each index in the array. Array.prototype.every()- Returns true if every element in this array satisfies the provided testing function.
Array.prototype.some()- Returns true if at least one element in this array satisfies the provided testing function.
Array.prototype.filter()- Creates a new array with all of the elements of this array for which the provided filtering function returns true.
Array.prototype.find()- Returns the found value in the array, if an element in the array satisfies the provided testing function or
undefinedif not found. Array.prototype.findIndex()- Returns the found index in the array, if an element in the array satisfies the provided testing function or -1 if not found.
Array.prototype.keys()- Returns a new
Array Iteratorthat contains the keys for each index in the array. Array.prototype.map()- Creates a new array with the results of calling a provided function on every element in this array.
Array.prototype.reduce()- Apply a function against an accumulator and each value of the array (from left-to-right) as to reduce it to a single value.
Array.prototype.reduceRight()- Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Array.prototype.values()- Returns a new
Array Iteratorobject that contains the values for each index in the array. Array.prototype[@@iterator]()- Returns a new
Array Iteratorobject that contains the values for each index in the array.
Generic methods (non-standard)
Many methods on the JavaScript Array object are designed to be generally applied to all objects which “look like” Arrays. That is, they can be used on any object which has a length property, and which can usefully be accessed using numeric property names (as with array[5] indexing). Some methods, such as join, only read the length and numeric properties of the object they are called on. Others, like reverse, require that the object's numeric properties and length be mutable; these methods can therefore not be called on objects like String, which does not permit its length property or synthesized numeric properties to be set.
Specifications
| Specification | Status | Comment |
|---|---|---|
| ECMAScript 1st Edition (ECMA-262) | Standard | Initial definition. |
| ECMAScript 5.1 (ECMA-262) The definition of 'Array.prototype' in that specification. |
Standard | |
| ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Array.prototype' in that specification. |
Standard | Added the copyWithin(), fill(), entries(), keys(), values(), find(), findIndex() methods. |
| ECMAScript 2017 Draft (ECMA-262) The definition of 'Array.prototype' in that specification. |
Draft | Added the includes() method. |
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |