百科狗-知识改变命运!
--

TypedArray.prototype.map() - JavaScript TypedArray 对象

乐乐1年前 (2023-11-21)阅读数 20#技术干货
文章标签数组

TypedArray.prototype.map()

map()方法对类型化数组的每个元素调用提供的函数,并使用结果来创建新的类型化数组。这个方法的算法和Array.prototype.map()相同。TypedArray是这里的类型化数组类型之一。

语法

typedarray.map(callback[, thisArg])

参数

callback产生新的类型化数组的元素的函数,接受三个函数:currentValue类型化数组中要处理的当前元素index类型化数组中要处理的当前元素的下标arraymap在其上调用的类型化数组thisArg可选,执行callback时作为this的值。

返回值

新的类型化数组

描述

map方法对类型化数组中的元素调用提供的callback函数,按照顺序,并且会从结果构造新的类型化数组。callback只对拥有值的类型化数组下标调用。它不会对未定义的,被删除的或者没有赋值的下标调用。

TypedArray.prototype.map() - JavaScript TypedArray 对象

callback以三个参数调用:元素的值,元素下标,和被遍历的类型化数组。

如果将thisArg参数提供给map,它会在调用时传递给callback,作为它的this值。否则,会传递undefined作为它的this值。callback最终观测到的this值由用于决定函数可见的this值的一般规则来决定。

map不改变在其上调用的类型化数组(虽然如果调用了callback可能会这样做)。

map处理的元素范围在callback调用之前就确定了。在map调用之后添加到数组的元素不会由callback访问。如果类型化数组的现有元素被改变,或被删除,它们传给callback的值是map访问它们时候的值。已删除的元素不会被访问。

示例

将类型数组映射被平方根的类型数组

下面的代码接受一个类型数组,并创建一个新的类型数组,含有第一个类型数组中元素的平方根。

var numbers = new Uint8Array([1, 4, 9]);
var roots = numbers.map(Math.sqrt);
// roots is now: Uint8Array [1, 2, 3], 
// numbers is still Uint8Array [1, 4, 9]

使用含有参数的函数来映射类型数组

下面的代码展示了,当使用需要一个参数的函数时,map的工作方式。在map遍历原始数组的过程中,参数会自动赋值为类型化数组的每个元素。

var numbers = new Uint8Array([1, 4, 9]);
var doubles = numbers.map(function(num) {
  return num * 2;
});
// doubles is now Uint8Array [2, 8, 18]
// numbers is still Uint8Array [1, 4, 9]

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)