(49)JS高级学习记录第一天,一篇总结JS基础知识

一、JS数据类型

1.基本(值)类型

在这里插入图片描述

2.对象(引用)类型

在这里插入图片描述
相关问题

undefined与null的区别,什么时候给变量赋值为null?

undefined表示未定义,没有赋值。unll表示定义了并赋值了,只是值为null。
初始赋值为null,表明将要赋值为对象。
结束前赋值,让变量量指向的对象成为垃圾对象(被垃圾回收器回收)

严格区别变量类型和数据类型

变量类型分为两种,一种保存值,一种保存地址
基本类型(保存值):保存基本类型的数据
引用类型(保存地址):保存对象类型的数据的地址
在这里插入图片描述

二、数据、内存、变量

1.数据

存储在内存中的信息,以二进制(0101101)的形式保存,可传递
数据的特点:可传递、可运算
一切皆数据
内存中所有操作的目标是数据

2. 内存

内存条通电后产生的临时储存空间

(1)一块“内存”(一个字节)包含两部分信息

内部储存的数据
该内存的地址值

(2)内存空间分类

在这里插入图片描述

3.变量

变量名,用来查找到对应的内存
变量值,内存中保存的数据

数据、内存、变量三者之间的关系?
内存是用来存储数据的空间;变量是内存的标识

关于赋值与内存问题
在这里插入图片描述

关于引用变量赋值问题
在这里插入图片描述

JS调用函数传递变量参数时,是值传递还是引用传递?
理解1:都是值(基本类型/地址值)传递
理解2:可能是值传递,也可能是引用(地址值)传递

三、对象

1. 什么是对象

保存多个数据(多种数据类型)的容器。这些数据每一个都有键名(key)和值(value)

2. 对象的属性和方法

对象的属性和方法都是对象内部的数据,根据数据类型的不同划分为两类。
属性:保存的数据类型是基本类型、普通对象Object、数组类型Array
方法:保存的数据类型是函数类型Function

3. 访问对象内部的数据

方法一(有时候不管用):.数据键名
方法二(通用方法):[‘数据键名’],数据键名有特殊字符/或者是一个变量
在这里插入图片描述

四、函数

1. 什么是函数

用来实现特定功能的, n条语句的封装体,可以执行

(1)函数是对象,也有属性和方法

属性:test.prototype
方法:test.call/apply(obj)。这个方法可以让test临时成为obj的方法

(2)如何调用函数

test()直接调用
obj.test():通过对象调用
new test():通过new调用
test.call/apply(obj):临时让test成为obj方法进行调用

2.回调函数

(1)回调函数的定义

自定义的,没有调用,但是最终会执行的函数

(2)常见的回调函数

dom事件回调函数
定时器回调函数
ajax请求回调函数
生命周期回调函数
在这里插入图片描述

3. IIEF

全名:Immediately-Invoked Function Expression立即调用函数表达,
别名:匿名函数自调用
作用:隐藏实现,不污染外部(全局)命名空间,用来编写JS模块
在这里插入图片描述

4.函数中的this关键字

所有的函数都有一个内部变量this,代表调用函数的当前对象,既然如此,那么this具体指的是谁,只有当函数执行才知道,谁调用,this就是谁。任何函数本质上都是通过某个对象来调用。
如何确定this的值?这里假设已定义了函数test。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值