JS基础理解

JS引擎如何管理内存?

1. 内存生命周期

  * 分配小内存空间, 得到它的使用权

  * 存储数据, 可以反复进行操作

  * 释放小内存空间

2. 释放内存

  * 局部变量: 函数执行完自动释放

  * 对象: 成为垃圾对象==>垃圾回收器回收

3:1. 什么是对象?

  * 多个数据的封装体

  * 用来保存多个数据的容器

  * 一个对象代表现实中的一个事物

2. 为什么要用对象?

  * 统一管理多个数据

3. 对象的组成

  * 属性: 属性名(字符串)和属性值(任意)组成

  * 方法: 一种特别的属性(属性值是函数)

4. 如何访问对象内部数据?

  * .属性名: 编码简单, 有时不能用

  *['属性名']: 编码麻烦, 能通用

5.

  问题: 什么时候必须使用['属性名']的方式?

  1. 属性名包含特殊字符: - 空格

  2. 属性名不确定

6:

1. 什么函数才是回调函数?

  1).你定义的

  2).你没有调

  3).但最终它执行了(在某个时刻或某个条件下)

2. 常见的回调函数?

  *dom事件回调函数 ==>发生事件的dom元素

  * 定时器回调函数===>window

  *ajax请求回调函数(后面讲)

  * 生命周期回调函数(后面讲)

3:

1. 理解

  * 全称:Immediately-Invoked Function Expression

2. 作用

     * 隐藏实现

     * 不会污染外部(全局)命名空间

     * 用它来编码js模块

--> /////////////////////////////////////////////////////////////////////////////////////////////////

  ;(function() {

   var a = 1

   function test () {

     console.log(++a)

    }

   window.$ = function () { // 向外暴露一个全局函数

     return {

       test: test

     }

    }

 })()

 $().test() // 1. $是一个函数 2. $执行后返回的是一个对象


原文地址:https://www.cnblogs.com/love-life-insist/p/9062940.html