JavaScript 基础
1.原始数据类型和typeof方法
1.1原始数据类型
1.2typeof
typeof 用于判断变量的数据类型
2.运算符
2.1算数运算符
”+“还可以拼接字符串
2.2赋值运算符
2.3比较运算符
!=也可以写成!==
2.4逻辑运算符
2.5三元运算符
- 三元运算符格式
(比较表达式) ? 表达式1 : 表达式2;
-
执行流程
如果比较表达式为 true,则取表达式1
如果比较表达式为 false,则取表达式2
3.流程控制和循环语句
3.1if 语句
3.2switch语句
3.3for循环
(1)for of: 遍历数组
(2)for in: 遍历对象
3.4while循环
3.5数组
- 定义格式
let 数组名 = [元素1,元素2,…];
let arr = [10, 20, 30];
- 索引范围
从 0 开始,最大到数组长度-1
- 数组长度
数组名.length
引用传递(Pass by Reference)是一种参数传递方式,它允许函数在调用时直接操作原始变量的内存地址,而不是创建一个副本。这意味着,当函数内部对参数进行修改时,原始变量的值也会被改变。这与值传递(Pass by Value)不同,值传递会创建一个变量的副本,函数内部对参数的修改不会影响原始变量。
(1)复制数组
aa是a的复制数组,和a没关系,不像b会随着a数组数值的改变而改变
(2)合并数组
使用扩展运算符或者使用concat()
方法
(3)字符串转数组
4.对象
在JavaScript中,对象是一种复合数据类型,它可以包含多个值,这些值可以是属性(property)和方法(method)。
两种创建对象的方法
- 对象字面量
使用大括号 {}
创建对象,并在其中定义属性和方法。
-
构造函数
使用 new
关键字创建对象的方法。通过定义一个函数,并在函数内部使用 this
关键字来定义对象的属性和方法。
关键字this
this 是 JavaScript 中的一个关键字,它表示当前执行上下文中的对象。this 的值取决于函数的调用方式,具体如下:
-
全局上下文中的
this
:在全局上下文中,this
指向全局对象。在浏览器环境中,全局对象是window
;在 Node.js 环境中,全局对象是global
。 -
函数调用中的
this
:在普通函数中,this
指向全局对象。在严格模式下,this
是undefined
。 -
对象方法调用中的
this
:在对象方法中,this
指向调用该方法的对象。
-
构造函数调用中的
this
:在构造函数中,this
指向新创建的对象。
-
事件处理函数中的
this
:在事件处理函数中,this
指向触发事件的元素。
-
箭头函数中的
this
:箭头函数没有自己的this
,它会捕获上一层非箭头函数的this
值。
思维导图如下