运行一个需要jsfeat的JavaScript程序

我从这里下载了jsfeat,并解压下载的文件。

在目录里面,我写了下面的内容:

require("./build/jsfeat.js"); var matrix = new jsfeat.matrix_t(2,2, jsfeat.U8_t | jsfeat.C1_t); matrix.data[1] = 4; console.log(matrix.data[1]); 

我运行程序如下:

 $ node matrix.js 

但是,得到以下错误:

 /Users/abc/Desktop/JavaScript/inspirit-jsfeat-59cc928/matrix.js:2 var matrix = new jsfeat.matrix_t(2,2, jsfeat.U8_t | jsfeat.C1_t); ^ ReferenceError: jsfeat is not defined at Object.<anonymous> (/Users/abc/Desktop/JavaScript/inspirit-jsfeat-59cc928/matrix.js:2:19) at Module._compile (module.js:425:26) at Object.Module._extensions..js (module.js:432:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:311:12) at Function.Module.runMain (module.js:457:10) at startup (node.js:136:18) at node.js:972:3 

这是为什么? 我该如何解决这个问题?

谢谢。

您需要将导入的模块分配给一个variables:

 var jsfeat = require("./build/jsfeat.js"); 

如果你喜欢,你可以安装NPM的模块来保存手动下载:

 $ npm install jsfeat 

该模块将被保存到./node_modules/jsfeat 。 然后你可以用var jsfeat = require('jsfeat')来要求它。