2. JavaScript 语法和数据结构

1. 基础

JavaScript不区分大小写

2. 注释

javascript 复制代码
// 单行注释

/* 这是一个更长的,
   多行注释
*/

/* 然而,你不能,/* 嵌套注释 */ 语法错误 */

3. 声明

var 声明一个变量,可选初始化一个值。

let 声明一个块作用域的局部变量,可选初始化一个值。

const 声明一个块作用域的只读常量,必须赋初值。

用 var 或 let 语句声明的变量,如果没有赋初始值,则其值为 undefined。

JavaScript 变量的另一个不同寻常的地方是,你可以先使用变量稍后再声明变量而不会引发异常。这一概念称为变量提升;JavaScript 变量感觉上是被"提升"或移到了函数或语句的最前面。但是,提升后的变量将返回 undefined 值。因此在使用或引用某个变量之后进行声明和初始化操作,这个被提升的变量仍将返回 undefined 值。

在 ECMAScript 6 中,let 和 const 同样会被提升变量到代码块的顶部但是不会被赋予初始值。在变量声明之前引用这个变量,将抛出引用错误(ReferenceError)。这个变量将从代码块一开始的时候就处在一个"暂时性死区",直到这个变量被声明为止。

4. 数据结构和类型

8种数据类型

  • null
  • undefined
  • number
  • bigint
  • boolean
  • string
  • symbol
  • Object
相关推荐
kyriewen11 小时前
别再 console.log 了:5 个 Chrome DevTools 调试技巧,用过就回不去了
前端·javascript·面试
To_OC13 小时前
LC 1 两数之和:面试第一道必考题,暴力解法直接被面试官 pass
javascript·算法·leetcode
GuWenyue15 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
何时梦醒15 小时前
深入理解递归与快速排序 —— 从基础入门到手写实现
前端·javascript
bonechips15 小时前
LLM 的无状态:从 HTTP 协议到对话上下文工程
前端·javascript
胡志辉15 小时前
从 prototype 到 V8,看懂 JavaScript 原型链
前端·javascript
ping某16 小时前
专栏-null 和 undefined 到底是什么?
前端·javascript·后端
swipe19 小时前
从 0 到 1 理解 React 虚拟列表:定高、不定高与 Canvas 版本完整拆解
前端·javascript·面试
铁皮饭盒20 小时前
Bun执行python代码
前端·javascript·后端
zzzzzz3101 天前
当甲方说'logo放大的同时再缩小一点'时,我用 AI 把这个需求做出来了
javascript·css·程序员