NodeJS .forEach未定义
我在[].forEach
中使用了[].forEach
。
(使用NodeJs v5.4.1)
让这个代码在一个函数中
function _buildUserQuestionsForDisplay(question,callback){ var res = {} ["is_open","created","deleted","_id"].forEach(function(v){ res[v] = question[v] }) ... ... }
抛出一个错误:
[ “IS_OPEN”, “创build”, “删除”, “_ ID”]。的forEach(函数(V){
TypeError:无法读取属性'forEach'的undefined
它工作,如果我改变代码
var arr = ["is_open","created","deleted","_id"]; arr.forEach(function(v){ res[v] = question[v] })
我已经在Chrome.console
上testing了相同的function,第一种方法Chrome.console
。
我知道这两个使用V8
JS引擎,这是一个错误,或者我失踪的Javascript规则?
谢谢!
如果在此行之后没有分号,则代码会中断:
var res = {}
为了最大限度地减less这些问题,一个好主意是如果你不使用棉绒,那就使用棉绒。 ESLint
和ESLint
都可以作为开发插件添加到你的代码编辑器中(我使用ESLint和SubmlimeText中的Airbnb样式表),也可以在提交代码之前使用Gulp或Grunt将其添加到工作stream中。
如果您select尽可能省略分号,我的build议是在任何以这些标记之一开头的语句中的开括号或方括号之前,或者以算术操作符标记“/”,“ +“或” – “,如果你碰巧写这样的陈述。 – 由Michaeljohn Clement 2010撰写的博客
- node.js – 有人可以解释这个callback?
- Node.js – 自动刷新在Dev
- RabbitMQ:`rabbitmqctl list_exchanges`下的'direct'标题是什么意思?
- 在nodejs中获取最大调用堆栈大小超过错误
- 蓝鸟承诺没有收到任何数据
- 是使用Firebase作为AngularJS和NodeJS之间的一个“不好”的想法?
- 用buzz.js播放一个又一个的声音
- 在JavaScript中,特别是NodeJS上的ES6,我可以直接在运行时操作类的getter和setter函数吗?
- 如何使用带有Node.js和AMD的Backbone Model(浏览器上的require.js)