1. Creation of array
var arrayObj = new Array(); //Create an array
var arrayObj = new Array([size]); //Create an array and specify the length, Note that it is not the upper limit, but the length.
var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); Create an array and assign a value
To explain, Although the second method creates an array and specifies the length, in fact the array is variable-length in all cases. That is to say, even if the length is specified to be 5, elements can still be stored outside the specified length. Note: At this time, the length It will change accordingly.
2. Access to the elements of the array
var testGetArrValue=arrayObj[1]; //Get the element value of the array
arrayObj[1]= "This is the new value"; / /Assign new values to array elements
3. Add array elements
arrayObj. push([item1 [item2 [. . . [itemN ]]]]);// Move an or multiple new elements are added to the end of the array, and the new length of the array is returned
arrayObj.unshift([item1 [item2 [. . . [itemN ]]]]); // Add one or more new elements to the array At the beginning, the elements in the array are automatically moved backward and the new length of the array is returned
arrayObj.splice(insertPos,0,[item1[, item2[, . . . [,itemN]]]]);//Change one or more A new element is inserted into the specified position of the array, and the element at the insertion position is automatically moved back and "" is returned.
4. Deletion of array elements
arrayObj.pop(); //Remove the last element and return the element value
arrayObj.shift(); //Remove the front An element and returns the element value, the elements in the array are automatically moved forward
arrayObj.splice(deletePos,deleteCount); //Delete the specified number of deleteCount elements starting from the specified position deletePos, and return the removed elements in array form
5. Interception and merging of arrays
arrayObj.slice(start, [end]); //Return a part of the array in the form of an array. Note that the element corresponding to end is not included. If it is omitted, end will copy all elements after start
arrayObj.concat([item1[, item2[, . . . [,itemN]]]]); //Copy multiple arrays (can also be strings, or arrays and string) are connected into an array, returning the connected new array
6, copy of the array
arrayObj.slice(0); //Return the copy array of the array, Note that it is a new array, not pointing to
arrayObj.concat(); //Returns a copy array of the array. Note that it is a new array, not pointing to
7. Sorting of array elements
arrayObj.reverse(); //Reverse the elements (the first to the last, the last to the front), return the array address
arrayObj.sort(); // Sort the array elements, return the array address
8. Stringification of array elements
arrayObj.join(separator); //Return a string. This string connects each element value of the array together, with a separator in the middle. separated.
toLocaleString, toString, valueOf: can be regarded as special uses of join, not commonly used
2. Three attributes of array objects
1. Length attribute
The Length attribute represents the length of the array, that is, the number of elements in it. Because the index of an array always starts from 0, the upper and lower limits of an array are: 0 and length-1 respectively. Unlike most other languages, the length property of JavaScript arrays is variable, which requires special attention. When the length attribute is set larger, the state of the entire array does not actually change, only the length attribute becomes larger; when the length attribute is set smaller than the original, the elements in the original array with indexes greater than or equal to length will All values are lost. The following is an example that demonstrates changing the length attribute:
var arr=[12,23,5,3,25,98,76,54,56,76]; //定义了一个包含10个数字的数组 alert(arr.length); //显示数组的长度10 arr.length=12; //增大数组的长度 alert(arr.length); //显示数组的长度已经变为12 alert(arr[8]); //显示第9个元素的值,为56 arr.length=5; //将数组的长度减少到5,索引等于或超过5的元素被丢弃 alert(arr[8]); //显示第9个元素已经变为"undefined" arr.length=10; //将数组长度恢复为10 alert(arr[8]); //虽然长度被恢复为10,但第9个元素却无法收回,显示"undefined"
From the above code we can clearly see the nature of the length attribute. But the length object can not only be set explicitly, it may also be modified implicitly. You can use an undeclared variable in JavaScript. Similarly, you can also use an undefined array element (referring to an element with an index greater than or equal to length). In this case, the value of the length attribute will be set to the value of the element index used. plus 1. For example, the following code:
var arr=[12,23,5,3,25,98,76,54,56,76]; alert(arr.length); arr[15]=34; alert(arr.length);
The code also defines an array containing 10 numbers. It can be seen from the alert statement that its length is 10. Then the element with index 15 is used and assigned a value of 15, that is, arr[15]=34. At this time, the alert statement is used to output the length of the array, and the result is 16. Regardless, this is a surprising feature for developers accustomed to strongly typed programming. In fact, the initial length of an array created using the new Array() form is 0. It is the operation of undefined elements that causes the length of the array to change.
As you can see from the above introduction, the length attribute is so magical. You can use it to easily increase or decrease the capacity of the array. Therefore, an in-depth understanding of the length attribute will help to use it flexibly during the development process.
2. prototype attribute
Returns a reference to the prototype of the object type. The prototype property is common to object.
objectName.prototype
objectName parameter is the name of the object object.
Description: Use the prototype property to provide a set of basic functions of the object's class. New instances of an object "inherit" the operations assigned to the object's prototype.
对于数组对象,以以下例子说明prototype 属性的用途。
给数组对象添加返回数组中最大元素值的方法。要完成这一点,声明一个函数,将它加入 Array.prototype, 并使用它。
function array_max( ) { var i, max = this[0]; for (i = 1; i < this.length; i++) { if (max < this[i]) max = this[i]; } return max; } Array.prototype.max = array_max; var x = new Array(1, 2, 3, 4, 5, 6); var y = x.max( );
该代码执行后,y 保存数组 x 中的最大值,或说 6。
3、constructor 属性
表示创建对象的函数。
object.constructor //object是对象或函数的名称。
说明:constructor 属性是所有具有 prototype 的对象的成员。它们包括除 Global 和 Math 对象以外的所有 JScript 固有对象。constructor 属性保存了对构造特定对象实例的函数的引用。
例如:
x = new String("Hi"); if (x.constructor == String) // 进行处理(条件为真)。
或
function MyFunc { // 函数体。 } y = new MyFunc; if (y.constructor == MyFunc) // 进行处理(条件为真)。
小伙伴们看完之后是否对javascript数组的操作有了新的认识了呢,希望大家能够喜欢本文。
更多javascript 数组操作详解相关文章请关注PHP中文网!

Node.js excels at efficient I/O, largely thanks to streams. Streams process data incrementally, avoiding memory overload—ideal for large files, network tasks, and real-time applications. Combining streams with TypeScript's type safety creates a powe

The differences in performance and efficiency between Python and JavaScript are mainly reflected in: 1) As an interpreted language, Python runs slowly but has high development efficiency and is suitable for rapid prototype development; 2) JavaScript is limited to single thread in the browser, but multi-threading and asynchronous I/O can be used to improve performance in Node.js, and both have advantages in actual projects.

JavaScript originated in 1995 and was created by Brandon Ike, and realized the language into C. 1.C language provides high performance and system-level programming capabilities for JavaScript. 2. JavaScript's memory management and performance optimization rely on C language. 3. The cross-platform feature of C language helps JavaScript run efficiently on different operating systems.

JavaScript runs in browsers and Node.js environments and relies on the JavaScript engine to parse and execute code. 1) Generate abstract syntax tree (AST) in the parsing stage; 2) convert AST into bytecode or machine code in the compilation stage; 3) execute the compiled code in the execution stage.

The future trends of Python and JavaScript include: 1. Python will consolidate its position in the fields of scientific computing and AI, 2. JavaScript will promote the development of web technology, 3. Cross-platform development will become a hot topic, and 4. Performance optimization will be the focus. Both will continue to expand application scenarios in their respective fields and make more breakthroughs in performance.

Both Python and JavaScript's choices in development environments are important. 1) Python's development environment includes PyCharm, JupyterNotebook and Anaconda, which are suitable for data science and rapid prototyping. 2) The development environment of JavaScript includes Node.js, VSCode and Webpack, which are suitable for front-end and back-end development. Choosing the right tools according to project needs can improve development efficiency and project success rate.

Yes, the engine core of JavaScript is written in C. 1) The C language provides efficient performance and underlying control, which is suitable for the development of JavaScript engine. 2) Taking the V8 engine as an example, its core is written in C, combining the efficiency and object-oriented characteristics of C. 3) The working principle of the JavaScript engine includes parsing, compiling and execution, and the C language plays a key role in these processes.

JavaScript is at the heart of modern websites because it enhances the interactivity and dynamicity of web pages. 1) It allows to change content without refreshing the page, 2) manipulate web pages through DOMAPI, 3) support complex interactive effects such as animation and drag-and-drop, 4) optimize performance and best practices to improve user experience.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

SublimeText3 English version
Recommended: Win version, supports code prompts!

SublimeText3 Linux new version
SublimeText3 Linux latest version

Notepad++7.3.1
Easy-to-use and free code editor
