Array map 数组映射的实现

<!doctype html>
<html>
<script type="text/javascript">

Array.prototype.map = function(fn){
for(var i =0; i< this.length; i++){
this[i] = fn(this[i], i);
}
return this;
}

var a=[1,2,3,4,5];
a.map(function(v){
return v*v;
});
console.log(a);

</script>
</html>

时间: 2024-10-01 05:57:07

Array map 数组映射的实现的相关文章

数组的方法 Array.map();Array.every()和Array.some();数组的indexof();

数组的方法 Array.map(); 栗子: var a=[1,2,,3]; var b=a.map( function(value){return value*value} ); alert(b); //[1,4,,9] 参数是一个函数,有返回值 返回值是一个新数组,函数调用原数组的每个元素进行函数格式化,空元素还存在. 数组的Array.every() 每一项都是真才是真;相似于&& Array.some() 某一个是真就是真:类似于|| 当验证一个空数组时: var a=[]; va

Scala学习——数组/映射/元组

数组 / 映射 / 元组 一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初始值的数组,无需new关键字 Scala声明数组时,需要带有Array类名,且使用 () 来指明长度或提供初始值序列. 在JVM中,Scala的Array以Java数组的方式实现.如arr在JVM中的类型对应java.lang.String[],charArr对应char[]. 2.变长数组 ArrayBuffer,全称scala.col

JavaScript Array map() 方法

语法: array.map(function(currentValue,index,arr), thisValue) currentValue:必须.当前元素的值index:可选.当期元素的索引值arr:可选.当期元素属于的数组对象thisValue:可选.对象作为该执行回调时使用,传递给函数,用作 "this" 的值.可改变this指向, map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值. map() 方法按照原始数组元素顺序依次处理元素. 注意: map

兼容低版本JS的Array.map方法

前几天去别的公司面试遇到个这样的问题,兼容IE7下的Array.map方法,一脸蒙蔽.后面回来查了下资料发现.Array.map方法是ECMA-262 标准中新添加的方法,在低版本的JS中是木有的. 看如下兼容性实现方式: 实现思路:1,先验证this对象,再将this用Object封装成obj. 2,获取封装后的obj的属性长度 3,验证是否有回调方法 4,根据obj的属性长度lengh生成新的数组,new Array(length). 5,遍历obj对象,获取mapKey,mapValue,

js Array Map and Set

Array slice slice()就是对应String的substring()版本,它截取Array的部分元素,然后返回一个新的Array: var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G']; arr.slice(0, 3); // 从索引0开始,到索引3结束,但不包括索引3: ['A', 'B', 'C'] arr.slice(3); // 从索引3开始到结束: ['D', 'E', 'F', 'G'] Note:slice()的起止参数包括开始索

js遍历集和(Array,Map,Set) (forEach, map, for, for...in, for...of)

1.Array可以使用下标,Map和Set不能使用下标,ES6引入了iterable类型,Array,Map,Set都属于iterable类型,它们可以使用for...of循环来遍历: var a = ['A', 'B', 'C']; var s = new Set(['A', 'B', 'C']); var m = new Map([[1, 'x'], [2, 'y'], [3, 'z']]); for (var x of a) { // 遍历Array   alert(x); } for (

forEach()、Array.map()和Array.filter()用法

Array.forEach() forEach()方法为每个数组元素调用一次函数(回调函数). <!DOCTYPE html> <html> <meta charset="utf-8"> <title>JavaScript Array.forEach()</title> <body> <h2>JavaScript Array.forEach()</h2> <p>为每个数组元素调用

Ibatis学习总结4--SQL Map XML 映射文件扩展

SQL Map XML 映射文件除了上文提到的属性还有一些其他重要的属性,下文将详细介绍这些属性. 缓存 Mapped Statement 结果集 通过在查询 statement 中指定 cacheModel 属性,可以缓存 Mapped Statement 中得到的查 询结果.Cache  model  是在 SQL  Map  XML  文件中定义的可配置缓存模式,可以使用 cacheModel 元素来配置. 1 <cacheModel id="product-cache"

【Sorting】【Array】数组中的逆序对

数组中的逆序对 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数. 输入: 每个测试案例包括两行: 第一行包含一个整数n,表示数组中的元素个数.其中1 <= n <= 10^5. 第二行包含n个整数,每个数组均为int类型. 输出: 对应每个测试案例,输出一个整数,表示数组中的逆序对的总数. 样例输入: 4 7 5 6 4 样例输出: 5 思路 分治的思想,统计两边内部的逆序对,以及左右两边之间的逆序对 代码 long