JavaScript Array Methods: Sort, Map, Filter, and Reduce
, 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])
- 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]
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); // 输出:按年份升序排列的书籍数组
-
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']
-
map
<创> 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))
-
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的产品数组
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); // 输出:按年份升序排列的书籍数组
- 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

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

AI Hentai Generator
Generate AI Hentai for free.

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



Article discusses creating, publishing, and maintaining JavaScript libraries, focusing on planning, development, testing, documentation, and promotion strategies.

The article discusses strategies for optimizing JavaScript performance in browsers, focusing on reducing execution time and minimizing impact on page load speed.

Frequently Asked Questions and Solutions for Front-end Thermal Paper Ticket Printing In Front-end Development, Ticket Printing is a common requirement. However, many developers are implementing...

The article discusses effective JavaScript debugging using browser developer tools, focusing on setting breakpoints, using the console, and analyzing performance.

There is no absolute salary for Python and JavaScript developers, depending on skills and industry needs. 1. Python may be paid more in data science and machine learning. 2. JavaScript has great demand in front-end and full-stack development, and its salary is also considerable. 3. Influencing factors include experience, geographical location, company size and specific skills.

The article explains how to use source maps to debug minified JavaScript by mapping it back to the original code. It discusses enabling source maps, setting breakpoints, and using tools like Chrome DevTools and Webpack.

How to merge array elements with the same ID into one object in JavaScript? When processing data, we often encounter the need to have the same ID...

In-depth discussion of the root causes of the difference in console.log output. This article will analyze the differences in the output results of console.log function in a piece of code and explain the reasons behind it. �...
