Articles of ecmascript 5

如何获取callback函数的返回值

我想要做一个API请求,并在我的网站上的表格中显示正文。 我正在使用Node.JS,React和Request。 这是我的代码: var requestResult = Request.get('https://test.ipdb.io/api/v1/assets/?search=asdf', (err, res, body) => { return body; }); 这显然不起作用。 我可以console.log(正文),但我希望API回应在callback函数外可用。 那可能吗?

是否有es6箭头function的polyfill?

是否有es6箭头function的polyfill? 下面的代码在IE中抛出语法错误exception,是否有一个polyfill使IE支持箭头函数? var myFunc = ()=>{ alert('es6'); } myFunc(); 注意 :我不想使用任何transpiler 。 提前致谢

Node.js / express.js / Backbone.js:req.body.keys是未定义的?

我在客户端使用Backbone.js,在服务器上使用express.js,我试图通过Backbone保存/放置模型更新。 我对Backbone.sync没有做任何事情,所以它应该只是简单的旧$ .ajax。 在服务器上,我有一个简单的 app.put('my-url', function(req, res){ req.body.keys.forEach( function(key){ // do stuff with key }); }); 每一次,我都会收到一个错误消息,说'不能调用forEach'的方法'undefined,并且肯定有一个快速的console.log显示req.body.keys是未定义的。 另外一个console.logs对象表明Object.keys和'forEach'就好了,那个types的req.body就是对象。 任何人都看到错在哪里? 我试过JSON.parse(req.body),并得到着名的“意想不到的令牌o”错误…

Object.create和inheritance

以下示例中的结果对象之间有什么区别: var EventEmitter = require('events').EventEmitter; var oProto = Object.create(EventEmitter.prototype); var oProto2 = Object.create(oProto); var oConstr = Object.create(new EventEmitter); var oConstr2 = Object.create(oConstr); 我想oConstr和oConstr2会在EventEmitter构造函数中设置任何属性,但是还有其他有意义的区别吗?

迭代NodeJS中的string行

我从child_process.exec()中得到一个缓冲区(我可以把它作为一个string)。 我需要迭代输出string的行。 我将如何做到这一点?

app和autoUpdater在reactjs中不可用,但在nodejs中可用

我被一个电子问题困住了。 或者反应,我不知道。 我试图创build一个React.Component使用它与electron.autoUpdater。 我在用着 import {app, autoUpdater, dialog} from 'electron'; 在反应组件中,但这些类别都不可用。 在使用require('electron')(这是正常的,ok)时,它们在nodejs中可用,但在reactjs中不可用。 但其余的组件在那里! 有什么我应该包括或需要知道吗? 在nodejs中,可用的模块是: { clipboard: [Getter], crashReporter: [Getter], nativeImage: [Getter], shell: [Getter], app: [Getter], autoUpdater: [Getter], BrowserView: [Getter], BrowserWindow: [Getter], contentTracing: [Getter], dialog: [Getter], globalShortcut: [Getter], ipcMain: [Getter], Menu: [Getter], MenuItem: [Getter], net: [Getter], Notification: [Getter], powerMonitor: [Getter], powerSaveBlocker: [Getter], protocol: [Getter], screen: […]

JavaScript:函数执行的顺序

我正在学习JavaScript,但是有很多我无法理解的东西。 在一个在线JavaScript测验中,出现了以下问题: 以下JavaScript代码将login到控制台: const a = {}; const b = () => aa = () => {}; const c = c => '' + c + aa(b()); const d = console.log.bind(console); const e = (e => () => d(c(e++)))(0); try{ e(); }catch(a){ e(); } 我花了一些时间去了解每个variables(这里是常量)的含义。 我开始分析e()里面的try代码块的代码。 所以, e表示闭包,这意味着函数d将被调用参数c(0) , e将变成1 。 据我了解,这里d基本上代表了console.log函数(但我不明白为什么他们使用bind ?)。 现在,我知道,第一个将被执行c(0) ,然后结果控制台,对不对? […]

如何创build共享的,特权的公共方法?

现在我的一个类的一些方法是公共的,但是可以访问私有variables(它们是特权的)。 这是因为它们是在类的构造函数中创build的,所以它们的闭包可以访问对象闭包。 但是,我想避免的是每次创build新的特权方法时的内存和性能开销。 所以我想分享他们。 有什么办法可以将特权方法放入原型? 请求示例: function Person(age) { // age is private this.grow = function() { // grow is now public, but can access private "age" age += 1; } } dan = new Person(10); dan.grow(); dan.age; // undefined 这工作,我有一个公共的方法“成长”,可以访问私人variables“年龄”,但成长必须重新为每个对象。 更高性能的方法是: function Person(age) { // age is private this.age = age; // but this.age […]

是否有支持参数转换和“多态性”的JavaScript文档生成器?

您的JavaScript库越“神奇”,使用文档生成器的可能性就越小。 有没有人知道一个文档生成器,允许参数移动/参数多态性function的文档? function example(required, optional, callback) { if(typeof optional === 'function' && typeof callback === 'undefined') { callback = optional; optional = 'DEFAULT VALUE'; } // do work here } 这可以被称为如下: example(required, optional, function() { // do work }); example(required, function() { // do work }); 任何build议表示赞赏,除“使用通用评论/文档块”。 这是相关的,但不是重复的: 在JSDOC中logginggenericstypes参数

有没有ECMA5(最近的JavaScript)任何内置函数复制对象?

我需要像Node.js中的Ext.apply。 最明显的方法是定义我自己的: function simplestApply(dst, src1) { for (var key in src) if (src.hasOwnProperty(key)) Object.defineProperty(dst, key, Object.getOwnPropertyDescriptor(src, key)); } 但是没有为同一目的的任何内置function?