JS?
JS是一门运行在客户端(运行在浏览器)的轻量级的脚本编程语言
JS目前不仅仅只能在浏览器中运行,还可以在NODE中运行
1、什么是NODE?
NODE是一个环境,供JS代码执行的环境,我们可以把它等价于浏览器,只不过我们一般都会把NODE这个环境安装到服务器端,这样我们就可以在服务器端使用JS编写程序了,也就是说JS不仅仅是客户端的语言也是服务器端的语言.....
2、NODE && 浏览器
-> NODE采用的是谷歌的V8引擎来渲染JS的(运行的速度快,稳定,编写的JS代码不需要考虑兼容)
-> 浏览器中的全局JS对象是window,而NODE环境下的全局JS对象是Global
-> 浏览器是安装在客户端的,为了保护客户端的安全,基本上不可能提供用JS对客户电脑磁盘上的文件进行操作的功能;但是NODE环境中提供了对应的I/O操作(服务器上文件的操作),使用JS可以对服务器磁盘下的文件进行增删改查。
-> NODE提供给JS很多新的方法:http.createServer、fs.writeFileSync、fs.readFileSync...
-> NODE是基于事件驱动的 / 异步编程(我们在NODE环境下编写的JS程序一般都是异步编程程序)
3、如何让JS代码在NODE环境中执行?
-> 利用webStorm嵌入了NODE环境,直接把编写的JS通过右键"Run xxx.js"在NODE环境中执行(不建议经常这样使用,因为有些时候会有缓存,结果并不一定是想要的)
->在命令窗口中执行
在当前要执行的JS文件目录下,shift+右键 => 在此处打开命令窗口 => node xxx.js 相当于把JS代码在NODE环境中执行了
在NODE中执行JS代码和浏览器中执行一样,如果JS代码发生了修改,想要看到最新的效果需要重新的执行对应的JS文件
-> 在命令窗口中执行 node ,然后开始编写对应的JS代码测试即可(RPEL命令操作)和在浏览器的控制台写JS代码一样
4、NODE模块
-> 内置模块(NODE环境天生提供的): http(createServer...)、fs(writeFIleSync...)、url...
-> 自定义模块:我们自己定义的模块
在NODE环境中,我们在当前的项目下创建一个JS文件,就相当于创建了一个模块,比如:新建一个a.js,相当于创建了a模块
如果要提供一些方法给其他的模块使用,则需要通过module.exports方法导出,例如在A模块中写了 module.exports = {fn:fn} /module.exports.fn = fn;
如果想在B模块中使用,我们需要先导入 var a = require("./a");这样的话我们就可以调取A模块中导出的方法了 a.fn();
-> 第三方模块:别人写好的模块我们拿来使用, 在NODE中我们如果需要使用别人的模块,需要使用npm这个命令进行管理 http://www.npmjs.com/
安装: npm install 第三方模块名称 -g
卸载: npm uninstall 第三方模块名称 -g
安装成功后在JS中通过 var less = require("less") 把刚才安装的第三方模块导入到JS中,这样的话我们就可以用这个模块导入到JS中,这样的话我们就可以使用这个模块就可以使用这个模块中提供的方法了less.render.....
5、服务创建成功后。如何向服务器端发送请求?
-> 在浏览器中输入 http://localhost:端口号/
-> 在浏览器中输入 http://本机ip地址:端口号/