JavaScript中进行数组处理的map()方法的使用方法分析
本篇文章将给大家介绍关于处理数组数据的map()方法的用法以及map()方法与forEach语句的区别,内容很详细,下面我们来看具体的内容。
首先我们来看一下map()的基本语法
var array = [ 数组数据 ]; array.map(回调函数);
Map是用于数组数据的方法,可以为每个元素执行“回调函数” 并将结果作为新数组返回。
换句话说,通过在此函数中编写要执行的进程,您可以对数组的每个元素执行任何操作!
如何使用map方法迭代数组?
以下示例是对包含数字数据的数组使用map方法的示例
var items = [1,2,3,4,5]; var result = items.map(function( value ) { return value * 2; }); console.log( result );
输出结果如下
在该示例中,对于数值“1到5”的数组用回调函数执行对每个元素进行加倍的处理。
出于这个原因,我们分配一个数组,其结果翻2倍作为“result ”的返回值,因此可以看到输出结果都变成了其本身的2倍。
最初,它都是使用for语句或while语句编写循环,但使用map非常方便,因为它可以通过一个非常简单的程序来实现!
在JavaScript中还有一个与map()方法用法类似的reduce()方法,关于reduce()方法可以参考这篇文章:JavaScript中的reduce如何使用
关于reduce()和map()方法的区别可以参考这篇文章:JavaScript中map()和reduce()有什么区别
map()与forEach语句的区别?
map()类似于forEach语句,它可以以相同的方式操作数组。
我们来看具体的示例
//forEach [1,2,3].forEach(function( value ) { console.log( value ); }); //map [1,2,3].map(function( value ) { console.log( value ); });
输出结果是一样的都为
正如您在此示例中看到的,forEach和map获得的结果是相同的。
那么,它们有什么不同,最大一点的不同就是是否具有返回值。
换句话说,forEach只是一种执行方法,而map在执行后将结果作为数组数据返回。
我们具体看示例
forEach:
var result = [1,2,3].forEach(function( value ) { return value * 2; }); console.log( result );
输出结果如下为:
forEach的返回值看不到。
map:
var result = [1,2,3].map(function( value ) { return value * 2; }); console.log( result );
输出结果为
可以将数组数据作为执行结果返回。
map的回调函数
之前我们看回调函数只有一个参数,但实际上你可以用得到有三个参数!
数组数据.map( function( value, index, array ) { });
Value是数组的值
index是数组的索引号
array是当前正在处理的数组
例如,在下面的示例中,我们将使用参数index,将index号的值为偶数的值翻倍
var items = [1,2,3,4,5,6,7,8,9]; var result = items.map( function( value, index, array ) { if( index % 2 !== 0 ) { return value * 2; } else { return value; } }); console.log( result );
输出结果如下
此外,map具有不对原始数组数据进行任何更改的功能,但如果使用第三个参数array ,则还可以更改原始数据!
var items = [1,2,3,4,5,6,7,8,9]; items.map( function( value, index, array ) { array[index] = value * 2; }); console.log( items );
输出结果如下
在过去,“回调函数”被指定为“map”的第一个参数,但实际上你可以指定任意“对象”作为第二个参数!
var array = [ 数组数据 ]; //指定对象为第2个参数 array.map( 回调函数, 对象 );
这使得可以组合指定的数组和对象以实现更方便的编程。
例如,在下面的示例中,将食物简单对象foodList指定为map的第二个参数。
var foodList = { '苹果': 45, '哈密瓜': 50, '猕猴桃': 60, '草莓': 40 }; 数组.map( function( value ) { }, foodList );
我们从对象中指定任意关键字并返回“price”。
var foodList = { '苹果': 45, '哈密瓜': 50, '猕猴桃': 60, '草莓': 40 }; var order = ['草莓', '猕猴桃']; var result = order.map( function( value, index, array ) { return this[value]; }, foodList ); console.log( result );
输出结果如下
在此示例中,您可以看到关键字在数组order中设置,从中获取与对象中拥有的关键字匹配的“price”并将其作为数组返回。
Atas ialah kandungan terperinci JavaScript中进行数组处理的map()方法的使用方法分析. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Peralihan dari C/C ke JavaScript memerlukan menyesuaikan diri dengan menaip dinamik, pengumpulan sampah dan pengaturcaraan asynchronous. 1) C/C adalah bahasa yang ditaip secara statik yang memerlukan pengurusan memori manual, manakala JavaScript ditaip secara dinamik dan pengumpulan sampah diproses secara automatik. 2) C/C perlu dikumpulkan ke dalam kod mesin, manakala JavaScript adalah bahasa yang ditafsirkan. 3) JavaScript memperkenalkan konsep seperti penutupan, rantaian prototaip dan janji, yang meningkatkan keupayaan pengaturcaraan fleksibiliti dan asynchronous.

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Aplikasi JavaScript di dunia nyata termasuk pembangunan depan dan back-end. 1) Memaparkan aplikasi front-end dengan membina aplikasi senarai TODO, yang melibatkan operasi DOM dan pemprosesan acara. 2) Membina Restfulapi melalui Node.js dan menyatakan untuk menunjukkan aplikasi back-end.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

C dan C memainkan peranan penting dalam enjin JavaScript, terutamanya digunakan untuk melaksanakan jurubahasa dan penyusun JIT. 1) C digunakan untuk menghuraikan kod sumber JavaScript dan menghasilkan pokok sintaks abstrak. 2) C bertanggungjawab untuk menjana dan melaksanakan bytecode. 3) C melaksanakan pengkompil JIT, mengoptimumkan dan menyusun kod hot-spot semasa runtime, dan dengan ketara meningkatkan kecekapan pelaksanaan JavaScript.
