一、JS 组成
ECMAScript:规定 JS 语法的核心知识(变量、数据类型、运算符、流程控制等)。
Web APIs:
- DOM:操作文档,对页面元素进行移动、大小修改、添加、删除。
- BOM:操作浏览器(窗口、历史、地址栏等)。
二、JS 引入方式(类比 CSS 三种写法)
- 行内:写在标签内部,如
<button onclick="alert('Hello')">点击</button>。 - 内部:
<script>标签写在 html 页面中,通常放在<body>末尾。 - 外部:
<script src="js文件路径"></script>,引入外部 .js 文件。
三、注释
- 单行注释:
// 注释内容,快捷键Ctrl + /。 - 多行注释:
/* 注释内容 */,快捷键Shift + Alt + A。
四、输入输出语句
输出:
document.write(内容):页面输出内容,标签会被解析成网页元素。alert('内容'):浏览器弹出警告对话框。console.log('内容'):控制台打印,用于程序调试。
输入:
prompt('提示文字'):弹出输入框,获取用户输入的文字。
五、变量与常量
- 变量:存储数据的容器,语法:
let 变量名。 - 常量:值不允许修改,语法:
const 常量名。
六、JS 六大基础数据类型
- 数字(Number):整数、小数。
- 字符串(String):用单引号、双引号或反引号包裹的文本。
- 布尔(Boolean):只有
true、false两个值。 - null:空类型。
- undefined:未定义。
- Symbol(ES6 新增,表示唯一值)。
字符串拼接:
- 使用
+拼接:document.write('我今年' + age)。 - 模板字符串(反引号 ``):
document.write(`我今年${age}岁了`)。
类型检测:typeof运算符。
- 写法:
typeof x。 - 函数写法:
typeof(x)。
七、数据类型转换
隐式转换(系统自动转换):
+运算符,只要一侧是字符串,另一侧转为字符串,结果为字符串。- 除
+以外算术运算符,会把数据转为数字类型计算。
显式转换(手动转换):
Number(数据):完整转为数字。parseInt(数据):只保留整数。parseFloat(数据):保留小数。
八、运算符
- 算术运算符:
*、/、+、-、%。 - 一元运算符:自增
++、自减--。 - 赋值运算符:
=、+=、-=等。 - 比较运算符:比较两个数据大小,返回布尔值(
>、<、>=、<=、==、===、!=、!==)。 - 逻辑运算符:
&&与:一假则假。||或:一真则真。!非:取反,真变假,假变真。
运算符优先级:!>&&>||。
九、表达式与语句
- 表达式:可以求出一个值,可以写在赋值等号的右侧(如
3 + 5、age > 18)。 - 语句:不一定有返回值,如
alert()、break,不能用于赋值。
十、流程控制三大语句
顺序、分支、循环。
分支语句:
- if 分支:
if (条件) { ... } else if (条件) { ... } else { ... }。 - 三元运算符:
条件 ? 满足条件执行 : 不满足条件执行。 - switch 语句:
switch(数据) { case 值1: 代码1 break; case 值2: 代码2 break; default: 代码n break; }
循环结构:
- 循环三要素:变量起始值、终止条件、变量变化量。
- while 循环:
while(循环条件) { 循环体(重复执行的代码) } - for 循环:
for(起始值; 终止条件; 变化量) { // 循环体 }
十一、数组
两种定义方式:
- 字面量:
let arr = [1, 2, 3]。 - 构造函数:
let arr = new Array(1, 2, 3, 4)。
常用属性:
字符串.length获取字符串字符数量。数组.length获取数组元素个数。
数组操作:
- 查:
数组[下标]获取对应下标数据。 - 改:
数组[下标] = 新值重新赋值。 - 增:
push(新数据):数组末尾添加。unshift(新数据):数组开头添加。
- 删:
pop():删除数组末尾元素。shift():删除数组开头元素。splice(操作下标, 删除个数):指定位置删除。
十二、总结
本文系统梳理了 JavaScript 的基础核心知识,涵盖了从语言组成、引入方式、语法基础到流程控制和数组操作的完整入门路径。掌握这些内容是后续学习 DOM 操作、事件处理、异步编程等高级主题的基石。建议读者通过实际编码练习巩固每个知识点,并关注 ES6+ 新特性(如 let/const、模板字符串、箭头函数等)的运用,以构建更现代、健壮的 JavaScript 代码。