相关疑难解决方法(0)

node.js全局变量?

我在这里问: node.js需要继承吗?

并被告知我可以通过省略var来将变量设置为全局范围.

这对我不起作用.

即:

_ = require('underscore');
Run Code Online (Sandbox Code Playgroud)

不能使_在所需文件上可用.我可以设置快递,app.set并在其他地方提供它.

有人可以确认这应该有用吗?谢谢.

javascript node.js express

203
推荐指数
6
解决办法
25万
查看次数

nodejs中的单例模式 - 是否需要?

最近,我碰上了这篇文章如何写在Node.js的一个单 我知道require 各州的文件:

模块在第一次加载后进行缓存.多次调用require('foo')可能不会导致模块代码多次执行.

因此,似乎每个必需的模块都可以很容易地用作单例,而不需要单独的样板代码.

题:

上面的文章是否提供了关于创建单例的解决方案?

javascript singleton design-patterns node.js

86
推荐指数
8
解决办法
7万
查看次数

如何知道函数是否异步?

我必须将一个函数传递给另一个函数,并将其作为回调执行.问题是有时这个函数是异步的,比如:

async function() {
 // Some async actions
}
Run Code Online (Sandbox Code Playgroud)

所以我想执行await callback()callback()取决于它接收的函数类型.

有没有办法知道函数的类型?

javascript node.js async-await ecmascript-next

58
推荐指数
6
解决办法
1万
查看次数

node.js标准模块的全局变量?

我知道全局变量很糟糕.

但是,如果我使用节点的模块"UTIL"在我的框架40个文件,是不是更好,只是声明它像一个全局变量:

util = require('util');
Run Code Online (Sandbox Code Playgroud)

在index.js文件而不是在40个文件中写入该行?

因为我经常在每个文件中使用相同的5-10模块,这将节省大量的时间,而不是复制粘贴所有的时间.

在这种情况下DRY不好吗?

javascript module global-variables shared-libraries node.js

55
推荐指数
4
解决办法
6万
查看次数

`this`的默认绑定与Chrome浏览器和Node.js不同

我正在阅读第2章:this所有人现在都有意义!来自你不了解JS,并决定做这个实验.

我有这个简单的脚本foo.js:

var a = 'foo';
var output;

// lets find a way to output strings in both
// Chrome and Node.js
if (typeof alert === 'undefined') {
    output = console.log;
} else {
    output = alert;
}

function getA() {
    return this.a;
}

var foo = getA();
output(foo);
Run Code Online (Sandbox Code Playgroud)

我期待以下事情getA()被称为:

  1. 由于调用站点getA在全局范围内,getA()将绑定到全局对象.
  2. 由于var a在全局范围内声明,我认为全局对象将具有一个名为的属性a,并且此属性与变量相同a.
  3. 因此,我希望this.a引用变量a.
  4. 因此我希望output(foo) …

javascript scope google-chrome v8 node.js

8
推荐指数
3
解决办法
835
查看次数

通过Express的多个API调用进行静态变量

我想要一个变量,该变量可以保留上一次API调用中的值。也就是说,每次调用时/api,它将变量count加1,当调用时/value,它将显示count的值。所以如果我打了/api3次再打/value,,它应该打印3。

可能吗?要保持变量的值抛出多个API调用?我正在尝试避免访问文件和数据库,我敢肯定我可以使用这些文件和数据库。

node.js express

2
推荐指数
1
解决办法
2476
查看次数

在 Node.js 中的文件之间共享变量

我想在 node.js 中进行“变量共享”,但我找不到可行的方法来做到这一点。

我的目标是能够更改另一个文件中的变量。例如,我a在主文件中有,但在另一个文件(test.js)中执行某些操作后,a应该更改其在主文件中的值。是否可以实现以及如何实现?

我已经尝试过这段代码,但它似乎不起作用。

main.js

let a = 10;
module.exports.test = a;
console.log(a);
require('./test.js');
console.log(a);
Run Code Online (Sandbox Code Playgroud)

test.js

let b = require('./main.js').test;
b = 15;
Run Code Online (Sandbox Code Playgroud)

javascript variables node.js

1
推荐指数
1
解决办法
3798
查看次数

AsyncFunction未定义,但MDN记录了它的用法

有一篇文章AsyncFunction - MDN上的JavaScript.它显示以下代码段:

new AsyncFunction([arg1[, arg2[, ...argN]],] functionBody)
Run Code Online (Sandbox Code Playgroud)

然而,在Mozzila Firefox 55和Google Chrome中,这个构造函数根本没有定义:

在此输入图像描述 在此输入图像描述

我发现(async function() {}).constructor确实如此AsyncFunction,但为什么我不能在全球范围内看到它呢?

javascript standards async-await ecmascript-6

0
推荐指数
1
解决办法
969
查看次数