node.js 1

1:Node.js是一门基于ECMASctipt开发的服务器端语言,提供了(前端JS没有的)很多扩展对象

 前端js:

   1.ES原生对象:String,Number,Boolean,Math,Date,Error,Function,Object,Array,RegExp

   2.BOM&DOM

   3.自定义对象

Node.js:

   1.ES原声对象

   2.Node.js内置对象

   3.大量的第三方对象

   4.自定义对象

  • .Node.js可以编写独立的服务器应用,无需借助于其他web服务器

   Node.js的意义:

  1. 执行效率比PHP/JSP/JAVA要快
  2. 用一种语言同一了前后端开发。

  全栈工程师

  

  NODE.js特点:

  1. 单线程逻辑处理
  2. 非阻塞
  3. 异步I/O处理
  4. 事件驱动编程

2.Node.js的两种运行方式:

  1. 交互模式(用于测试):    读取用户输入,执行运算,输出执行结果,继续下一循环;执行方法:输入一行js语句,回车执行
  2. 脚本模式(用于开发):把要执行的所有JS语句编写在一个独立的js文件中,一次性的提交给node.js处理,可以不是.js后缀的文件;执行方法:node d:xxxx.js

3.Node.js的基础语法及新特性:

  1. 数据类型:
    1.   原始类型:string,number,boolean...(原始数据直接赋值即可)
    2. 引用类型:ES原生对象、Node.js对象、自定义对象(引用类型通常需要使用new关键字创建)
  2.   模板字符串 (ES6中提供的一种新的字符串形式)
    1.   使用模板方式定义字符串,数据可以实现换行
    2. 可以使用${}拼接变量,并且可以执行运算
  3.   严格模式(ES5中新增的一种比普通模式更为严格的js运行模式)
    1.   使用方法:
      1.   在整个脚本文件中使用严格模式,在脚本文件的开头:"use strict";用于新项目
      2. 在单个函数内启用严格模式;用于老项目维护
    2.   规则:
      1. 修改常量的值时非法的--将静默失败升级为错误
      2. 不允许对未声明的变量进行赋值
      3. 匿名函数的this不再指向全局
  4. 变量的作用域(全局作用域、局部作用域、块级作用域(ES6中专有))
    1.   块级作用域:只在当前代码块中使用
    2. 代码块:任何一个{}都是一个代码块,if/for/while...
    3. 代码块中使用“let”声明块级作用域变量,出了代码块遍不可使用。
  5.   循环结构
    1.   for...of...(ES6):循环数组的元素值
    2.  函数(匿名函数的自调)
      1.   箭头函数,只用于匿名函数,箭头函数中不存在arguments对象
  6. 对象
    1.   创建对象的方式:
      1.   对象字面量
      2. 构造函数方式
      3. 原型继承方式
      4. class方式--ES新增
    2.   class类:是一组相似对象的属性的行为的抽象集合(描述一类事物统一的属性和功能的结构)
    3. 。。
    4. 全局对象
      1.   Node.js中的全局对象是Global;
      2. 在交互模式下,声明的全局变量是global的成员,--全局对象的污染;
      3. 在脚本模式下,声明的全局变量不是global的成员,--避免了全局对象的污染
    5. global对象的成员属性和成员方法
      1. console用于向stdout(标准输出)和stderr(标准错误)输出信息。 (note:console中的成员方法是异步的,输出顺序和书写顺序不一定完全一致)
          1. console.log()    // 向stdout输出日志信息
          2. console.info()  //同上
          3. console.error() // 向stderr输出错误信息
          4. console.warm() //同上
          5. console.trace()  //向stderr输出栈轨迹信息
          6. console.dir()  //向srdout输出指定对象的字符串表示
          7. console.assert() // 断言,为真的断言,错误信息不回输出;为假的断言会抛出错误对象,并输出错误信息,终止脚本的运行,可以自定义错误信息。
          8. console.time()  console.timeEnd()  // 测试代码的执行时间,与console.timeEnd()配合使用

                  

      2. process进程
原文地址:https://www.cnblogs.com/Hale-Proh/p/7163092.html