2 zzzcsd zzzcsd 于 2016.02.17 16:10 提问

Array.prototype.forEach中的this
 array.forEach(callback[, thisArg])

第二个参数thisArg,如果有转入,则callback中的this,将指向这个对象。
如果没有传入thisArg:

如果 thisArg 值为 undefined 或 null,函数的 this 值取决于当前执行环境是否为严格模式(严格模式下为 undefined,非严格模式下为全局对象)。

大家用惯了underscore和其他同类类库的话,再用ES6的这个API,不觉得别扭吗
this默认就应该指向数组中的每个item,除非有传入thisArg。
ES6的这个默认值,太反动,太反动

3个回答

zzzcsd
zzzcsd   2016.02.18 16:42
已采纳

callback的第一个参数,已经传入了想要的东西,没必要再把this指向它
ES6这样规定有道理
有道理

showbo
showbo   Ds   Rxr 2016.02.17 16:55

你是学了jquery这种类库后先入为主了吧,es6规定了这样感觉别扭而已

Mr_dsw
Mr_dsw   Ds   Rxr 2016.02.17 21:09

说的很有道理啊!传入对象,指示到对象

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
reference中的reference中的reference中的reference中的reference中的
reference中的reference中的reference中的reference中的
中中新闻采集器
中中新闻采集器 新闻采集器
在Linux系统中在Linux系统中
在Linux系统中在Linux系统中在Linux系统中在Linux系统中在Linux系统中
在VB.NET中导出数据到WORD中
在VB.NET中导出数据到WORD中 在VB.NET中导出数据到WORD中v在VB.NET中导出数据到WORD中
计算机网络中组成中的网络层
网络层提供的两种服务 网际协议IP 划分子网和构造超网 网际控制报文协议ICMP 因特网的路由选择协议 IP多播 虚拟专用网VPN和网络地址转换NAT
datagrid中的数据读取到TreeView中
DataGrid中的数据可以用鼠标拖拽到TreeView中。
Asp.Net中使用水晶报表(中)
使用Pull模式   我们将通过下面的这些步骤来通过Pull模式来执行水晶报表   1.首先创建rpt文件,并使用水晶报表设计接口设置一些必须的数据连接。   2.拖放一个 CrystalReportViewer控件至aspx页面,设置它的属性指定我们上一步创建的.rpt文件。   3. 在代码中调用DataBind方法。   创建 .rpt 文件:
.net中ajax.net中使用方法
.net中如何使用ajax和ajax类库,让你轻松的配置好ajax的编写环境
listview中的数据导出到excel中
利用listView控件将数据导出到外部的excel文件中
ucoss中os-tmr.c中的代码分析
ucos ii 操作系统定时器的使用方法