初识nodejs-基本语法
副标题[/!--empirenews.page--]
初识nodejs-基本语法nodejs是JavaScript的一个在后端的运行环境,关于nodejs的认识,我们可以看上一篇文章<<初识nodejs>>,我们要使用nodejs,首先要安装nodejs,安装的东西你可理解为java中的运行环境一样,至于怎么安装,我们最好安装nvm(nodejs version manage),安装的过程也写在了另一篇博客<>(那时懵懂期,回头再修改的详细一点) 那么nodejs作为一个后台的平台,他可以为我们提供的很多,我们可以用JavaScript语言进行文件的获取,删除等等文件操作,我们可以用JavaScript开一个本地服务器,我们可以和mongoDB配合来搭建后台,他给我们前端带来了太多的惊喜,让我们深深的迷恋上了它,但正所谓学一个新知识时,我们都需要从简,从基础学起,那么在nodejs环境下,我们的基本语法又是怎样的呢? 模块nodejs是支持ES6的,所以在这里你可以尽情的去写,不用考虑浏览器不兼容了(这里是后端,哈哈),安装好了nodejs后,我们在终端输入node,就会进入到nodejs环境,这里我们可以输入:
可以看到我们控制台输出了hello world,我第一次写的时候还以为这是chrome的开发者模式呢,这或许就是chrom v8引擎的作用吧,我们这些简单的指令可以直接在终端中输出,那么如果是运行一大段代码呢?我们可以写个js文件里边,
然后node hello.js,这样我们文件中写的程序就能运行出来了,nodejsshi是基于commonJS的,所以当我们的程序变大的时候,就可以使用模块了,nodejs是模块化的,什么是模块,每个模块就是nodejs的每个功能,我们有http模块来提供服务器,有fs模块来提供对文件操作的各种功能,我们写的代码可以分成一个一个的模块,这样可以提高我们代码的复用性,以及减少代码之间的耦合性,可以避免函数名和变量名的冲突. java和python使用import来导入其他函数库,而php和ruby是通过require,上边也说过,nodejs是基于CommonJS的,在node中我们可以使用require这个关键字来导入模块.例如:
首先,我们可以使用原生的和外部的模块,这些模块都是别人写好的或者nodejs自带的,他们都给我们提供各种各样的功能,我们只需要直接require它们就能使用了,
这里我们使用exports导出hello函数,然后再另一文件中通过require导入另一个模块,这时再另一个模块中,
我们还有另一种导出方法,在hello.js中
这时我们就出现了不同的地方 exports和module.exports的区别在讲他们的区别之前,我们先来看一个例子,这个例子以及他们区别的理解我是在node中文社区学习的.
这里,由于a直接赋给b,这是b相当于a的引用,a和b指向同一块存储区域,这是改变了b的name,相应的a的name也发生了改变.那么这就引出了我们要讲的:
上边这三大法则就是module.exports和exports的主要区别,我们可以这样来看: 1 exports = module.exports; 2 所以现在exports.hello = hello; 3 就相当于module.exports.hello = hello; 4 当另一文件导入var hello = require('hello.js');时 5 因为是导入了module.exports这个对象,所以使用hello的时候,是:hello.hello(); 所以我们导出模块的时候,直接使用module.exports=hello;就行了. 据说nodejs可以使用c/c++编写二进制模块,但因为前端出身的我虽然学过c/c++但研究不深,我还是好好的用JavaScript吧! 当我们需要使用一些线上的模块时,只需要去nodejs.org里边去搜索,然后使用npm install就可以了,npm是和nodejs捆绑在一起的, 回调函数
|