学习总结
1,无关紧要的
关于js:JavaScript是一门轻量级、基于面向对象的、即时编译的一门解释型语言。
特点
1,js严格区分大小写
2,每一行代码应该以分号结尾,但是可以省略
3,js代码的执行顺序,从上往下依次执行
感觉前面的基础的东西没什么好说的,就直接从后面开始吧
2,循环
主要就是for和while循环
for循环
for (let index = 0; index < array.length; index++) {
}
while循环
while (condition) {
}
3,函数
函数:已经封装好了的一段可以重复调用,并且实现某种功能的代码块
1、封装好的
2、重复调用
3、实现某种功能或者目的
函数是一个表达式,函数表达式默认的返回值是undefined 如果,需要指定返回值,请使用 return语句将数据返回!
1,作用域
作用域: var声明的变量以及function声明的函数在声明创建的时候,其作用域就已经确定了!
包含三中作用域,全局作用域,函数作用域,块级作用域
作用域链:就在将多个作用域进行关联,形成一个隐式的链条,通过这个链条可以访问到上级作用域
注意:作用域链,是从里往外依次寻找!不能从外往里去寻找对应变量或者函数、
2,this指向
this关键字:当函数被调用时,运行环境会自动向该函数隐式传入this对象
this的指向是变化的,在不同情况下函数的执行中,this的指向是不一样的!
判断this的两种方法
1、当函数作为普通函数调用执行时 函数名()或IIFE 函数的this指向的是window
2、当函数作为某个对象的方法进行调用时,该方法中的this指向的是调用者,而非持有者!
对象名.方法() 表达式.方法()
3,闭包
正常情况下:局部作用域下声明变量或者函数,当该作用域中代码执行完毕后,该函数所声明的变量、函数就被销毁了
闭包:闭包就是当函数被嵌套声明时,并且该函数被直接或者间接返回或者赋值给某个全局变量!
那么这个时候js内部发生一些事情
- 1、函数的地址值被返回了
- 2、产生了一个特殊的对象,闭包 (在这个闭包它打包了该函数作用域链上的所有的变量以及函数)
4,构造函数
构造函数语法规则: