首页 > Web开发 > 详细

node.js入门

时间:2020-03-05 21:52:07      阅读:63      评论:0      收藏:0      [点我收藏+]

一、node.js

  1.基于 chrome V8引擎 ,就是一个独立的,专门执行 JavaScript程序的环境。

    a.JavaScript 运行在浏览器时:
                    可以操作 ECMAScript(语法)  DOM(文档元素)   BOM(浏览器)
                    但是,浏览器规定,不能操作电脑的硬件和文件文档内容
    b.JavaScript 在node.js中运行时:
                    可以操作 ECMAScript(语法)  I/O操作(操作文件文档内容)
                    可能再操作 DOM文档 BOM浏览器 
    I/O 操作 :
      操作 操作系统中的文档
      操作 后端数据库,MySQL,
      作用就类似于一个后端程序语言了,php,java...
二、node.js的特点
  1,标准的异步编程
    不会阻塞正常同步代码的执行
  2,合理分配资源
    让计算机,更加合理的执行程序
    提高程序的执行效率,缩短执行事件
  3,合理处理高 并发(所谓并发,就是同时执行)
    同时处理多个需求(程序的执行,服务器的访问,数据的查询...)
三、node.js的安装
  1. nodejs官网(https://nodejs.org/en/),它会根据系统信息选择对应版本
    .msi 是 window 系统
    .pkg 是 mac 系统
  2.在cmd中输入 node --version 或者 node -v ,打印对应版本信息,说明安装成功
  技术分享图片
四、node.js的执行
  1. cmd
  2. powershell
  3. vscode终端
  语法1:在cmd中输入node进入node.js,直接运行JavaScript代码,效果类似于在控制台 console 中运行 JavaScript程序;
  语法2:切换路径到外部js文件所在的文件夹路径,输入 node+空格+外部js文件名称(包括扩展名) ;
  技术分享图片
五、常见的Linux命令
  1. 盘符分区: (D:)   切换至指定的盘符分区
  2. cd  路径                   切换至指定的文件夹,文件夹一定是在当前盘符分区下的文件夹 (macOS中没有盘符分区,没有这个命令)
  3. cd..                          返回上一级文件夹目录
  4. ipconfig                   查看当前电脑的 ip 信息
  5. ping 网址/接口        测试网速
  6. cls                     清屏,清除当前cmd中显示的内容
  7. systminfo                查看当前电脑配置信息
  (在 win10 操作系统中, 可以 直接 ctrl+c 或者 ctrl+v 复制粘贴,在 win7 操作系统中, 只能是 鼠标右键复制粘贴)
六、模块化开发
  将每一个独立的js文件,看做一个模块,js文件实现的就是不同的功能,使用时只要加载这些js文件即可。

  1.内置模块       

    fs读取写入模块   

 

        // 1,建立一个 fs 模块对象 / 导入执行 fs模块的功能
        const fs = require(‘fs‘);
        // 2,读取外部文件的内容
        // 语法: fs对象.readFile( 文件路径 , 编码格式(选填) , 回调函数 )
        //   文件路径 : 是相对路径,从当前js文件开始的相对路径
        //   编码格式 : 是读取文件的编码格式,一般是 utf8
        //             如果不需要编码格式,输出时,在cmd中会显示默认的buffer格式
        //             只是影响cmd中显示的格式,不影响读取内容的编码格式
        //   回调函数 : 读取完成时,执行的回调函数,一般没有什么用,但是必须设定  
        //             参数1,存储报错信息,读取成功,报错信息是null
        //             参数2,存储读取信息,读取失败,读取信息是undefined
        fs.readFile(‘./demo.js‘ , ‘utf8‘ , function(参数1,参数2){})
        // 3,写入外部文件的内容
        // 语法: fs.writeFile(写入文件的路径 , 写入的内容 , 写入成功的回调函数)
        // 说明: 写入的内容,是全覆盖写入,会覆盖文件中的原始内容
        //       如果写入目标文件存在,会向目标文件中,写入内容
        //       如果写入目标文件不存在,会自己建立一个目标文件,写入内容
        // 写入文件内容,程序的执行,一定是成功的
        fs.writeFile(‘./text1.txt‘ , ‘我是写入的内容‘ , function(){}) 
        // 4,node.js都是异步操作   同步写入操作
        s.writeFileSync(‘你要写入的文件‘ , 你要写入的内容 , 回调函数)    

    http搭建服务器模块

    // node.js的内置模块  http
    // 作用: 专门用于搭建服务器的内置模块
    // 就是将电脑上的一个端口, 当做一个服务器入口来使用
    // 通过这个端口可以来访问页面内容
    // 只能支持http协议, 其他协议不支持
    // 基本步骤
    // 1, 导入内置模块
    const http = require(‘http‘)
    // 2, 设定监听端口
    // 2 - 1: 创建一个http服务, 使用的是内置模块提供的方法
    const server = http.createServer(function () {
        // 设定服务器的基本功能
        // 一般是通过if判断, 判断请求的地址和内容
        // 根据请求的不同文件名称, 返回不同的文件内容
        // 例如 请求 index.html 就返回这个页面的内容
    })
    // 2 - 2: 让这个http服务, 来监听一个端口
    server.listen(8080, function () { })
    // 此时就完成了一个服务器的搭建, 服务器的端口是8080
    // 说明:   1, 当前端口没有任何的功能, 两个回调函数内容都是空
    //         2, 监听端口, 应该范围 0 - 65535  建议 是 1023 以后 并且不要监听已经存在的端口

  2.自定义模块          

    在 a.js中要导入 b.js 定义的模块函数
// 加载b.js文件
// 在 对象a中,就有 b文件导入的模块可以执行
const a = require(‘./b.js‘)
a.f1();
a.f2();

    定义b.js模块

function fun1() {
    console.log(‘模块111‘)
}
function fun2() {
    console.log(‘模块222‘)
}
// 在node中执行的js文件,会自带一个 module 对象
// module 是 node.js 提供好的方法,我们直接使用就可以了

// module 对象 中都会 有一个成员叫 exports ,也是一个对象

// 需要将 我们已经定义好的模块函数,通过 module.exports 来导入
// 导出时,还要再新定义一个名称,这个名称是在其他程序中,调用模块的名称
module.exports.f1 = fun1;
module.exports.f2 = fun2;

  3.第三方模块

    安装方式:路径> npm install/i 包名(程序名称) ;路径> npm i 包名@版本号(安装不同版本);

      例如:路径>npm i jquery;

    删除方式:路径> npm uninstall/un 包名;

    npm 配置文件的设定:路径>npm init -y    第三方依赖包初始化 --- 自动设定配置信息;

    package.json会存储安装过的依赖包信息,执行 npm install /  npm i  会自动安装 之前存储在  package.json 文件信息中的所有依赖包;

"dependencies": {
    "bootstrap": "^4.4.1",
    "jquery": "^3.4.1"
}

  因为npm安装插件是从国外服务器下载,受网络影响大,可能出现异常,如果npm的服务器在中国就好了,所以我们乐于分享的淘宝团队干了这事

  安装:命令提示符执行  npm install -g cnpm --registry=https://registry.npm.taobao.org;(cnpm跟npm用法完全一致,只是在执行命令时将npm改为cnpm)

          或者  npm config set registry https://registry.npm.taobao.org

 

 

  

 

node.js入门

原文:https://www.cnblogs.com/younghxp/p/12419987.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!