node.js 学习一

Node.js 是单进程单线程应用程序,但是通过事件和回调支持并发,所以性能非常高。
与PHP 相似 都是单进程。
Node.js 的每一个 API 都是异步的,并作为一个独立线程运行,使用异步函数调用,并处理并发。

Node.js 基本上所有的事件机制都是用设计模式中观察者模式实现。

与PHP现行的 swoole 思想一样,
node 的包管理工具是 NPM 【NPM是随同NodeJS一起安装的包管理工具】其实跟 php 的 composer 是一个道理

注意: 永远使用var 定义变量以避免引入全局变量,因为全局变量会污染 命名空间,提高代码的耦合风险。

Node.js 适合I/O 密集型的应用,而不是计算密集型的应用, 因为一个Node.js 进程只有一个线程,因此在任何时刻都只有一个事件在执行。

如果这个事 件占用大量的CPU 时间,执行事件循环中的下一个事件就需要等待很久,因此Node.js 的一 个编程原则就是尽量缩短每个事件的执行时间。

util作为Node.js的一个核心模块,能够提供常用函数的集合,弥补核心JavaScript的功能过于精简的不足。

JavaScript的面向对象特性是基于原型的。JavaScript没有提供对象继承的语言级别特性,而是通过原型复制来实现的。

REST中文解释为,表述性状态传递(英文:Representational State Transfer,简称REST),是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。

表述性状态转移是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。

需要注意的是,REST是设计风格而不是标准。REST通常基于使用HTTP,URI和XML(标准通用标记语言下的一个子集)以及HTML(标准通用标记语言下的一个应用)这些现有的广泛流行的协议和标准。REST通常使用JSON数据格式。

在浏览器 JavaScript 中,通常window 是全局对象, 而Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。

这句话你品,你细品,发现什么了没有??? 就是把全局对象明确定义了,他是固定的

console.log():向标准输出流打印字符并以换行符结束。

console.log 接受若干 个参数,如果只有一个参数,则输出这个参数的字符串形式。如果有多个参数,则 以类似于C 语言 printf() 命令的格式输出。

与常见的基于类的不同,JavaScript的面向对象特性是基于原型的。JavaScript没有提供对象继承的语言级别特性,而是通过原型复制来实现的。

与同步I/O函数不同,Node.js中异步函数大多没有返回值。

世事洞明皆学问
原文地址:https://www.cnblogs.com/Json159/p/12053412.html