Node.js的基础知识点

一,语言 和 环境(平台) 之间的关系

1,浏览器环境 中的 Javascript

浏览器中 Javascript 的组成部分

  • ECMAScript核心 + DOM + BOM
2,Node环境 中的 Javascript
  1. Node.js 中 Javascript 的组成部分

    • ECMAScript 核心 + 全局成员 + 核心 API 模块
    • 全局成员:console、setInterval、setTimeout。。。
    • 核心 API 模块:就是 Node 平台 单独提供的一些API,这些API是Node平台所独有的;
  2. 注意:Node.js 中 没有 BOM 和 DOM
    1. 由于 Node 服务器端运行环境中,没有浏览器 和 HTML 的概念,所以,Node中的javascript 提出了 DOM 和 BOM 这两个对象模型,取而代之的,是 全局成员 和 核心 API 模块;

二,ECMAScript 规范,浏览器中的js,Node中的js之间的关系

  1. ECMAScript 规范(标准):就是一本书,这本书中规定了语言的特性;
  2. 浏览器中的js:
    • 浏览器中的 js 组成部分:ECMAScript 核心 + DOM + BOM
  3. Node中的js:
    • Node中的 js 组成部分: ECMAScript 核心 + 全局成员 + 核心API成员

三,总结

  1. 什么是 Node.js(我们自己给它下个定义)

    就是一个服务器端的Javascript运行环境,可以让程序员,通过 Javascript 做 后台服务器编程开发

  2. 学习 Node.js 可以做什么
    • 像 PHP 一样,使用 Javascript 编写符合规范的后端 API 接口网站
    • 使用 Node.js 开发一些实用的工具
    • 基于 Socket 技术,开发类似于聊天室之类的即时通讯项目
    • 基于 Electron 环境,开发桌面软件
    • ect...

四、ECMAScript 6常用语法

4.1 let(变量) 与 const(常量)
  1. 之前定义变量,用 var 关键字;有如下主要缺点:

    • 存在变量提升问题,降低 js 代码的可阅读性
    • 没有块级作用域,容易造成变量污染
  2. let 主要特性:
    • 不存在变量提升问题,只有定义之后才能使用此变量
    • 先定义再使用(暂时性死区),不可以重复定义,否则会报错
    • { } 作用域
  3. const 主要特性:
    • 不存在变量提升问题,只有定义之后才能使用此变量
    • const 定义的常量*无法被重新赋值,因为常量无法修改,变量可修改*
    • 当定义常量的时候,必须定义且初始化(即需要赋值),否则报语法错误
    • const 定义的常量,也有 块级作用域
    • for循环里面定义的const常量,拥有独立的块级作用域,每次循环,都是一个新的作用域
4.2 变量的解构赋值(常用)

定义:所谓的解构赋值,就是把 某个对象中的属性,当作变量,给解放出来,这样,今后就能够当作变量直接使用了;

  • 可以使用 :为解构出来的变量重命名
  // 变量的解构赋值  定义 let user={    name:‘zs‘,    age:20,    gender:‘男‘  } 结构赋值 const { name : name123, age, gender } = user  name : name123相当于,把变量name的值赋值给name123  console.log(name123)
4.3 箭头函数(常用)
  1. 语法:

    • 定义普通的 function 函数

      function show() {    console.log(‘这是普通 function 定义的 show 方法‘)}var add(x,y){  return x+y;}add(1,2)
    • 把方法定义为箭头函数(最完整的写法)
      (形参列表) => { 函数体代码 }() => {  console.log(‘这是普通 function 定义的 show 方法‘)}var add=(x,y)=>x+y;add(1,2)
  2. 箭头函数,本质上就是一个匿名函数
  3. 箭头函数的特性: 箭头函数内部的 this, 永远和 箭头函数外部的 this 保持一致;
  4. 变体
    • 变体1:如果箭头函数,左侧的形参列表中,只有一个参数,则,左侧小括号可以省略;
    • 变体2:如果右侧函数体中,只有一行代码,则,右侧的 { } 可以省略;
    • 变体3:如果箭头函数左侧 只有一个 形参,而且右侧只有一行代码,则 两边的 (){} 都可以省略
  5. 注意: 如果我们省略了 右侧函数体的 { },那么,默认会把 右侧函数体中代码的执行结果,当作箭头函数的调用结果 return 出去;
4.4 对象中 定义方法定义属性 的便捷方式
var a={    name: ‘zs‘,    age:18,    say(){    console.log(‘111‘);    }}

五,文件操作

1,文件读取

fs.readFile

const fs = require(‘fs‘)//引入模块fs.readFile(‘./files/1.txt‘,‘utf-8‘,function(err,data){        console.log(err)    //err为null,就证明成功了        console.log(data)//读取的数据    })

fs.readFile(‘./files/1.txt‘,‘utf-8‘,function(err,data){?console.log(‘读取成功+‘data‘)//读取的数据    })

原文地址:https://www.cnblogs.com/yyfc/p/11107350.html

时间: 2024-08-28 17:38:54

Node.js的基础知识点的相关文章

Node.js系列基础学习----安装,实现Hello World, REPL

Node.js基础学习 1:简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好 2:安装 à安装node.js 在官网安装自己win版本的node.js的版本,下载,安装完毕后在运行中输入node -v若是出现版本号就证明安装成功. à安装n

三、Node.js中基础知识

1.控制台console对象的方法: 1) console.log(); //显示一行字符串 2) console.info(); //与1)完全相同 3) console.error(); //标准错误输出流的输出 4) console.warn(); //与3)完全相同 5) console.dir(); //查看一个对象中的内容并将其信息输出到控制台 6) console.time(); //标记开始时间 7) console.timeEnd(); //标记结束时间 8) console.

node.js零基础详细教程(5):express 、 路由

第五章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. express Express 是一个基于 Node.js 平台的极简.灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用. 其实可以简单的将express理解为node.js的一个类库:我们在使用j

node.js零基础详细教程(7):node.js操作mongodb,及操作方法的封装

第七章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. node.js操作mangodb 创建一个用于放置今天文件的文件夹,npm init初始化一下,并创建demo1.js用于写node代码 使用 npm install mongodb,将mongodb控制模块安装到本地 在demo1.js中写

node.js零基础详细教程(6):mongodb数据库操作

第六章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. 数据库 数据库管理结构,一般分为两种:B/S架构   C/S架构. B/S架构:  Browser/Server,浏览器/服务器模式,即通过浏览器和服务器端的数据库进行交互 C/S架构:  Client/Server,客户端/服务器模式,即通

node.js零基础详细教程(4):node.js事件机制、node异步IO操作

第四章 建议学习时间3小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. node.js事件机制 node.js是单线程,但是通过事件和回调支持并发,可以实现非常高的性能. node.js所有的API都是通过异步调用.第一堂课的时候,我们写过一个同步和异步的示例(如下),当初说到:同步代码先执行完成,然后才执行异步

node.js教程基础:第一个node.js程序

第一个Node.js程序 可以是基于控制台console和基于Web的node.js应用程序. 基于console的node.js例子 文件:console_example1.js 1 console.log('Hello World); 打开Node.js命令提示符并运行以下代码: >node console_example1.js >Hello World 在这里,console.log()函数在控制台上显示消息. 我们还可以在console.log()函数中使用格式说明符: 1 cons

node.js教程基础:node.js包管理器

Node.js 包管理器 Node程序包管理器提供了两个主要功能: 1) 它提供了可在search.nodejs.org上搜索的node.js软件包/模块的在线存储库. 2) 它还提供了命令行实用程序,用于安装Node.js软件包,执行版本管理和Node.js软件包的依赖关系管理. 在v0.6.3之后的版本中,npm与Node.js可安装程序捆绑在一起. 您可以通过打开Node.js命令提示符并键入以下命令来检查版本: npm version 使用npm安装模块 以下是安装任何Node.js模块

Node.js的基础学习1

nodejs   windows下的调用方法: C:\Users\owen>node helloworld.jsHello WorldHello: 25 C:\Users\owen>node getmodule.jsHello BYVoid C:\Users\owen>node app.jsHTTP Server is listening at port 3000 或者 C:\Users\owen>node> require ('./app.js');HTTP Server