1 <!--
2 * @Author: your TM_cc
3 * @Date: 2021-11-03 22:06:54
4 * @LastEditTime: 2021-11-03 22:20:38
5 * @LastEditors: Please set LastEditors
6 * @Description: In User Settings Edit
7 * @FilePath: \Array.prototype.map方法.html
8 -->
9
10 <!DOCTYPE html>
11 <html lang="en">
12 <head>
13 <meta charset="UTF-8">
14 <meta http-equiv="X-UA-Compatible" content="IE=edge">
15 <meta name="viewport" content="width=device-width, initial-scale=1.0">
16 <title>Document</title>
17 </head>
18 <body>
19 <script>
20 // map函数的直接使用
21 var arr = [1,2,3,4]
22 var array = arr.map((item,index) => {
23 return item * 2;
24 })
25 console.log(array);
26
27
28 // 写一个新的newMap函数
29 function newMap (arr,mapCallback) {
30 //检查参数是否正确
31 if (!Array.isArray(arr) || !arr.length || typeof mapCallback !== 'function'){
32 return []
33 }else{
34 let result = []
35 for (let i = 0,len = arr.length;i < len;i++){
36 result.push(mapCallback(arr[i],i,arr))
37 }
38 return result
39 }
40 }
41 var res = newMap(arr,(item) => {
42 return item * 2
43 })
44 console.log(res);
45
46 </script>
47 </body>
48 </html>