-
组成
- ECMAScript 基础语法,比如定义变量、流程控制语句、定义方法
- DOM 指的是文档对象,简单点理解就是整个html
- BOM 指的是浏览器对象,通过js代码操作浏览器对象,比如弹框功能,操作浏览器地址栏页面跳转,后退前进,历史记录
-
引入方式
-
方式一,在页面使用script标签
- <script>//JS代码<script>
-
方式二,引入外部的js文件 快捷键 script:src
- <script src="js/bootstrap.js"></script>
-
VScode
-
安装
- 傻瓜式安装
- 对勾全部都勾选
-
插件
-
汉化插件
-
预览页面
-
服务器
-
ECMAScript
-
输出语句
-
定义变量和常量
-
null和undefined
- null表示具体的值,比如let name = null;
- undefined表示没有给变量赋值 比如let name;
-
在js中如果报null或者undefined相关的异常,都可以理解成java中的空指针异常
-
==和===的区别
- ==会把等于号两边的数据变成数字再去比较值,最终比较的是值
var a = "1"; var b=1; console.log(a==b);//true
- ===先判断两个变量的数据类型,数据类型一致才比较值
var a = "1"; var b=1; console.log(a===b);//false
-
数组
-
定义数组
- let array = ["贺鹏","凡凡",45,true]; //数组中的数据的数据类型可以不一样
- let array = new Array(11,22,33);
-
获取和设置元素
- array[0] = 值;//索引只要>=即可,即使索引不存在也会报错
- console.log(array[0]);
-
特有方法
-
向数组末尾添加元素
- array.push(元素)
-
获取并移出末尾的元素
- let e = array.pop();
-
遍历
- //定义数组
let array = ["贺鹏","柱子","墙","李赛"];
//遍历
for(let i=0; i<array.length; i++){
console.log(array[i]);
}
-
函数
-
定义方式
-
方式1,使用function关键字
- function 函数名(){}
-
方式2,使用let关键
- let 函数名 = function(){}
-
案例1:求n和m的和,并返回
-
案例2:求可变参数的和,并返回
-
注意事项
- 1.形参个数可以和实参不匹配
- 2.函数之间是可以嵌套的
- 3.js中不存在重载
- 4.没有返回值并且没有返回值类型
- 5.如果函数没有返回值,那么他的返回值类型是undefined
-
字符的模板语法
-
DOM
-
相关术语
-
获取标签对象
- document.querySelector("CSS选择器") 只能获取一个标签对象
- document.querySlectorAll("CSS选择器") 可以获取多个标签对象
-
选择器
- 功能:定位标签
-
分类
- 标签选择器
- 类选择器
- ID选择器
- 子元素选择器 >
- 子孙元素选择器
- 属性选择器
- [name] 获取含有name属性的元素
- [name='jack'] 获取name=jack属性的元素
- input[type='text'] 获取type=text的input标签
-
事件
-
load
- 页面资源加载完毕以后执行
-
submit
- 表单提交,仅form标签可用
-
click
- 单击
-
dblclick
- 双击
-
blur
- 失去焦点 仅input框可用
-
focus
- 获取交单,仅input框可用
-
change
- 下拉框改变触发,仅select标签可用
-
mouseenter
- 鼠标移入
-
mouseleave
- 鼠标移出去
-
mousemove
- 鼠标移动
-
绑定方式
-
1.使用on事件名属性绑定,值是js代码 onclick="console.log(123)"
-
2.使用dom对象绑定
-
this问题
-
单词
- script 脚本
- dom document 文档
- bom browser object model 浏览器模型对象
- alert 警告
- console 控制台
- log 日志
- const 常量
- undefined 未定义
- push 推
- pop 取出
- function 函数
- method 方法
- selector 选择器
- query 查询
- load 加载
- submit 提交
- click 单击
- dblclick 双击
- mouse 鼠标
- leave 移开
- enter 进入
- move 移动
- blur 失去焦点
- focus 聚焦
- change 改变
- element 元素、标签
- attribute 属性
- text 文本
- node 节点
- appendChild 添加子元素
- parentNode 父节点
- removeChild 删除子元素