, sort
, map
and filter
methods of the JavaScript array, and provides practical examples to help you proficient in data processing. reduce
-
Array.prototype.sort Sorting method
Methods arrange array elements according to the specified order. By default, it sorted the string element in the sequential sequence of the dictionary. But through custom comparison functions, you can achieve more complicated sorting logic.
grammar
sort
: Define the functions of sort order. It receives two parameters (a, b) and returns:
array.sort([compareFunction])Negative value: If A should be ranked before B.
- Zero: If A and B are equal.
compareFunction
- Positive value: If A should be ranked behind B.
- Example: Sort the number in the sequential order
Example: Sort by attribute sorting object
const numbers = [42, 7, 19, 73, 23]; numbers.sort((a, b) => a - b); console.log(numbers); // 輸出:[7, 19, 23, 42, 73]<會> Methods modify the original array.
For numbers or complex sorting, it is necessary to provide a comparison function to avoid accidents.
const books = [ { title: 'Book A', year: 2001 }, { title: 'Book B', year: 1998 }, { title: 'Book C', year: 2015 } ]; books.sort((a, b) => a.year - b.year); console.log(books); // 輸出:按年份升序排列的書籍?dāng)?shù)組
-
sort
- Map method
- <通過> Methods create a new array by applying the function provided to each element of the original array. It is often used in data conversion.
grammar <語>
<對>: For functions performed by each element, receive:
Current element. map
Original array.
array.map(callback(element, index, array))
-
callback
- Example: Convert the number array
- Example: Formatal data
const numbers = [1, 2, 3, 4, 5]; const squares = numbers.map(num => num ** 2); console.log(squares); // 輸出:[1, 4, 9, 16, 25]
const users = [ { firstName: 'John', lastName: 'Doe' }, { firstName: 'Jane', lastName: 'Smith' } ]; const fullNames = users.map(user => `${user.firstName} ${user.lastName}`); console.log(fullNames); // 輸出:['John Doe', 'Jane Smith']Filter method
-
map
<創(chuàng)> Create a new array, which only contains elements that meet the given conditions. It is often used to extract data subsets. - grammar <語>
- <確>: Determine whether it should contain a function (return True) or exclude (back false) elements.
Example: Filter the even number
filter
<不> Methods will not modify the original array.
array.filter(callback(element, index, array))It is a powerful tool for extracting related data or cleaning up arrays.
-
callback
Statue method
const numbers = [1, 2, 3, 4, 5, 6]; const evens = numbers.filter(num => num % 2 === 0); console.log(evens); // 輸出:[2, 4, 6]
<將> The method applies a function to each element (from left to right) of the accumulator and array, and attributes it to a single value.
const products = [ { name: 'Laptop', price: 1200 }, { name: 'Phone', price: 800 }, { name: 'Tablet', price: 500 } ]; const expensiveProducts = products.filter(product => product.price > 700); console.log(expensiveProducts); // 輸出:價格高于700的產(chǎn)品數(shù)組
grammar <語>
array.sort([compareFunction])
- <對>: For the function of each element, the parameters are:
-
callback
Cumulator.- Current element.
- Index of the current element.
- Original array.
-
initialValue
Example: Seeking peace
Example: Group data according to attributes
const numbers = [42, 7, 19, 73, 23]; numbers.sort((a, b) => a - b); console.log(numbers); // 輸出:[7, 19, 23, 42, 73]
<非常> The method is very flexible and can generate array, objects or single values.
const books = [ { title: 'Book A', year: 2001 }, { title: 'Book B', year: 1998 }, { title: 'Book C', year: 2015 } ]; books.sort((a, b) => a.year - b.year); console.log(books); // 輸出:按年份升序排列的書籍?dāng)?shù)組
- It is a powerful tool for custom conversion, data aggregation, etc.
-
reduce
Always provide the initial value to obtain better predictability. - Method combination
- By combining , , and
Conclusion
JavaScript's map
, filter
, reduce
, and
The above is the detailed content of JavaScript Array Methods: Sort, Map, Filter, and Reduce. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

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

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

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

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

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Java and JavaScript are different programming languages, each suitable for different application scenarios. Java is used for large enterprise and mobile application development, while JavaScript is mainly used for web page development.

JavaScriptcommentsareessentialformaintaining,reading,andguidingcodeexecution.1)Single-linecommentsareusedforquickexplanations.2)Multi-linecommentsexplaincomplexlogicorprovidedetaileddocumentation.3)Inlinecommentsclarifyspecificpartsofcode.Bestpractic

The following points should be noted when processing dates and time in JavaScript: 1. There are many ways to create Date objects. It is recommended to use ISO format strings to ensure compatibility; 2. Get and set time information can be obtained and set methods, and note that the month starts from 0; 3. Manually formatting dates requires strings, and third-party libraries can also be used; 4. It is recommended to use libraries that support time zones, such as Luxon. Mastering these key points can effectively avoid common mistakes.

PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

JavaScriptispreferredforwebdevelopment,whileJavaisbetterforlarge-scalebackendsystemsandAndroidapps.1)JavaScriptexcelsincreatinginteractivewebexperienceswithitsdynamicnatureandDOMmanipulation.2)Javaoffersstrongtypingandobject-orientedfeatures,idealfor

JavaScripthassevenfundamentaldatatypes:number,string,boolean,undefined,null,object,andsymbol.1)Numbersuseadouble-precisionformat,usefulforwidevaluerangesbutbecautiouswithfloating-pointarithmetic.2)Stringsareimmutable,useefficientconcatenationmethodsf

Event capture and bubble are two stages of event propagation in DOM. Capture is from the top layer to the target element, and bubble is from the target element to the top layer. 1. Event capture is implemented by setting the useCapture parameter of addEventListener to true; 2. Event bubble is the default behavior, useCapture is set to false or omitted; 3. Event propagation can be used to prevent event propagation; 4. Event bubbling supports event delegation to improve dynamic content processing efficiency; 5. Capture can be used to intercept events in advance, such as logging or error processing. Understanding these two phases helps to accurately control the timing and how JavaScript responds to user operations.

If JavaScript applications load slowly and have poor performance, the problem is that the payload is too large. Solutions include: 1. Use code splitting (CodeSplitting), split the large bundle into multiple small files through React.lazy() or build tools, and load it as needed to reduce the first download; 2. Remove unused code (TreeShaking), use the ES6 module mechanism to clear "dead code" to ensure that the introduced libraries support this feature; 3. Compress and merge resource files, enable Gzip/Brotli and Terser to compress JS, reasonably merge files and optimize static resources; 4. Replace heavy-duty dependencies and choose lightweight libraries such as day.js and fetch
