文章目录
初步认识 NodeJS
JavaScript 是什么
参考文章:JavaScript 简介-中文网
什么编程语言:JavaScript 是一种 解释型
编程语言。
执行环境
:JavaScript 如今不仅可以在浏览器中执行,也可以在服务端执行,甚至可以在任意搭载了 JavaScript 引擎 的设备中执行。
JS与Python/PHP有什么区别:php是一个服务端语言,而JavaScript是一个客户端语言。
核心理解:NodeJS是什么
参考文章:php和nodejs的区别是什么?
NodeJS与PHP有什么区别:
- Node.js是一个基于Chrome V8引擎的JavaScript运行环境,一个
让 JavaScript 运行在服务端
的开发平台, 用于方便地搭建响应速度快、易于扩展的网络应用。 - Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。Node 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。
小结
翻了五六篇文章,突然发现 3 个核心问题 JavaScript 是什么
、NodeJS是什么
、php和nodejs的区别是什么?
。把笔记精简一下,只留下这三个核心问题的解答,足够了。
初步认识 JavaScript
参考文章:JavaScript 简介-中文网,官网的介绍太清晰辣。
简介:理解JS脚本运行环境
解释型脚本:脚本被以纯文本的形式提供和执行。它们不需要特殊的准备或编译即可运行。
执行环境:如今,JavaScript 不仅可以在浏览器中执行,也可以在服务端执行,甚至可以在任意搭载了 JavaScript 引擎 的设备中执行。
引擎类型:浏览器中嵌入了 JavaScript 引擎,有时也称作“JavaScript 虚拟机”。不同的引擎有不同的“代号”,例如:
- V8 —— Chrome、Opera 和 Edge 中的 JavaScript 引擎。
- SpiderMonkey —— Firefox 中的 JavaScript 引擎。
JavaScript 的能力很大程度上取决于它运行的环境。例如:
- Node.js 支持允许 JavaScript 读取/写入任意文件,执行网络请求等的函数。
- 浏览器中的 JavaScript 可以做与网页操作、用户交互和 Web 服务器相关的所有事情。
基础语法
参考:数据类型-JS中文网
变量
使用 var、let 或 const 声明变量来存储数据:
- let — 现代的变量声明方式;
- var — 老旧的变量声明方式。一般情况下,我们不会再使用它;
- const — 类似于 let,但是变量的值无法被修改。
不限制变量的数据类型
“动态类型”(dynamically typed)编程语言:虽然编程语言中有不同的数据类型,但是你定义的变量并不会在定义后,被限制为某一数据类型。(比如Python和JavaScript)
反引号和 ${}表达式
在 JavaScript 中,有三种包含字符串的方式。其中 反引号
是 功能扩展
引号,它们允许我们通过将 变量和表达式
包装在 ${…} 中,来将它们嵌入到字符串中,例如:
let name = "John";
// 嵌入一个变量
alert( `Hello, ${name}!` ); // Hello, John!
// 嵌入一个表达式
alert( `the result is ${1 + 2}` ); // the result is 3
两个特殊值
特殊值:
- JavaScript 中的 null 仅仅是一个代表“无”、“空”或“值未知”的特殊值;
- undefined 的含义是 未被赋值。
八种数据类型
JavaScript 中有八种数据类型(译注:前七种为基本数据类型,也称为原始数据类型,而 object 为复杂数据类型):
- 七种原始数据类型:
- number 用于任何类型的数字:整数或浮点数,在 ±(2的53次方-1) 范围内的整数。
- bigint 用于任意长度的整数。(安全表达16位以上的整数)
- string 用于字符串:一个字符串可以包含 0 个或多个字符,所以没有单独的单字符类型。
- boolean 用于 true 和 false。
- null 用于未知的值 —— 只有一个 null 值的独立类型。
- undefined 用于未定义的值 —— 只有一个 undefined 值的独立类型。
- symbol 用于唯一的标识符。
- 以及一种非原始数据类型:
- object 用于更复杂的数据结构。
我们可以通过 typeof 运算符查看存储在变量中的数据类型。
- 通常用作 typeof x,但 typeof(x) 也可行。
- 以字符串的形式返回类型名称,例如 “string”。
- typeof null 会返回 “object” —— 这是 JavaScript 编程语言的一个错误,实际上它并不是一个 object。
关键词小结
作用 | 关键词 |
---|---|
定义变量 | let / var / const |
查看变量类型 | typeof |
可执行的表达式符号 | ${} |
安全表达16位以上的整数 | bigint |
合并字符串 | + |