小编Loo*_*urr的帖子

将函数绑定到javascript中的另一个函数

我在javascript中有一个功能

function foo(callback) {
    console.log("Hello");
    callback();
}
Run Code Online (Sandbox Code Playgroud)

和另一个功能

function bar() {
  console.log("world");
}
Run Code Online (Sandbox Code Playgroud)

我想做一个功能 FooBar

FooBar = foo.bind(this, bar);
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我实际上要做的是创建一个函数队列,并且在绑定回调之前我经常需要绑定一个none函数参数,如下例所示

function foo() {
    console.log(arguments[0]);
    var func = arguments[1];
    func();
}

function bar() {
    console.log("world");
}

foo.bind(this, "hello");
var FooBar = foo.bind(this, bar);

FooBar();
Run Code Online (Sandbox Code Playgroud)

这会产生这个错误

[Function: bar]

TypeError: undefined is not a function
Run Code Online (Sandbox Code Playgroud)

一旦将函数绑定到其他函数类型,我如何将函数绑定到另一个函数?

javascript bind function

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

将 socket.io 命名空间分离到单独的文件中

我编写了两个相对较大的 socket.io 应用程序,一个用于玩游戏,另一个用于聊天,我将它们分成两个命名空间。

我现在想将这些从我的主文件中app.js移到某个命名空间目录中,并且只需要在我的 express 应用程序中使用它们,从而保留所有功能。

我将如何解决这个问题,或者有什么方法可以以其他方式获得我想要做的事情的效果?

namespaces node.js express socket.io

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

CoffeeScript的存在运算符如何工作?

Coffeescript使用存在运算符来确定变量何时存在,并且在coffeescript文档中它显示something?会编译到something !== undefined && something !== null但是我注意到我的coffeescript版本只是编译它something !== null所以我写了一个测试来看看这将如何影响我的代码

taco = undefined 

if taco?
    console.log "fiesta!"
else 
    console.log "No taco!"
Run Code Online (Sandbox Code Playgroud)

编译为

// Generated by CoffeeScript 1.4.0
(function() {
  var taco;

  taco = void 0;

  if (taco != null) {
    console.log("fiesta!");
  } else {
    console.log("No taco!");
  }

}).call(this);
Run Code Online (Sandbox Code Playgroud)

并输出了一些意外,No taco!所以我的问题是两倍.为什么coffeescript不再检查价值是什么undefined以及为什么这是有效的?

coffeescript existential-operator

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

在AWS Elastic Beanstalk上全局安装npm软件包

我正在尝试在弹性beantalk上全局安装npm软件包。这就是我根据本文档编写的配置文件的外观。

container_commands:
  install_phantom:
    command: "npm install phantomjs -g"
Run Code Online (Sandbox Code Playgroud)

当我部署到Elastic Beanstalk时,出现此错误

实例上的命令失败。返回码:1输出:构建期间发生错误:命令install_phantom failed。

amazon-web-services node.js npm phantomjs amazon-elastic-beanstalk

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

如何使用node-gyp运行node.js的C++代码

Node-gyp是一个用Node.js编写的跨平台命令行工具,用于编译Node.js的本机插件模块.我试图让我的节点程序运行我编写的一些C++.Node-gyp似乎使这个过程变得更容易,就像在这个例子中一样,我可以通过执行node-gyp configure后跟node-gyp build随后运行来运行node test.js

我仍然无法理解如何设置binding.ccbinding.gyp文件.有谁知道发生了什么或知道任何好的指南/文件?

c++ node.js node-gyp

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

Bash脚本以递归方式使文件中的所有文本都为小写

我正在尝试编写一个递归遍历目录的shell脚本,然后在每个文件中将所有大写字母转换 为小写字母.要清楚,我不是要更改文件名,而是更改文件中的文本.

注意事项:

  1. 这是一个古老的Fortran项目,我试图让它更容易访问
  2. 我不想创建一个新文件,而是使用更改来覆盖旧文件
  3. 此目录中有几个不同的文件扩展名,包括.par .f .txt和其他

最好的方法是什么?

bash

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

在CoffeeScript中将元素添加到有序数组中

我有一个排序数组,我在服务器给他的时候添加了元素.我遇到的麻烦是确定放置新元素的位置,然后将其放在同一个循环中

在javascript中,这看起来像这样

for(var i = 0; i < array.length; ++i){
   if( element_to_add < array[i]){
      array.splice(i,0,element_to_add);
      break;
   }
}
Run Code Online (Sandbox Code Playgroud)

问题是在咖啡脚本中我没有访问计数器,所以我不能告诉它将我的数组拼接在所需的索引上.

如何在CoffeeScript中向已排序的数组中添加元素?

javascript arrays coffeescript

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

mongoose:找到最新的文件

我有mongoose架构,它有一个day属性

Math.floor((new Date()).getTime() / (24 * 3600 * 1000))
Run Code Online (Sandbox Code Playgroud)

我想找到输入的最后一天的数据所以说今天是16085我想找到输入的最后一天.或者另一种说法是这样的.什么是一个文档day属性小于16085但大于其他所有文件,其中day也小于16085.

或另一种方式

什么是day属性少于的所有文档集的最大元素16085

然后迭代我的所有文档,我怎么能这样做?

javascript mongoose mongodb node.js

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

使用请求从 url 下载图像并保存到变量

有什么办法可以从请求中下载图像并将其保存到变量中吗?

request.head(url, function(err, res, body){

   request(url).pipe(fs.createWriteStream(image_path));

});
Run Code Online (Sandbox Code Playgroud)

现在我是piping写流的结果。但相反,我想将它保存到一个变量中,以便我可以在我的程序中使用它。有没有办法做到这一点?

javascript pipe stream request node.js

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

在mongoDB中查找以某个字母开头的集合中的元素

我在 mongo 商店中有一个集合,其中每个元素都有一个name属性。我已经按字母顺序对它进行了排序

sort({'name': 1})
Run Code Online (Sandbox Code Playgroud)

但现在我只想找到以某个字母开头的元素,比如t。因此,可能会返回所需的结果:

[{name: tam}, {name: tom}, {name: tommy}]
Run Code Online (Sandbox Code Playgroud)

我将如何构建这样的查询?

mongoose mongodb node.js

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