js闭包理解(1)

js 数据类型

js 中的数据类型

基本数据类型(7)

number
  1. infinity 无穷大

  2. NaN 不是一个有效数字

  3. NaN !=NaN NaN和谁都不相等

  4. isNaN检测是否不是一个有效数字

  5. 强转换 Number(【value】)

  6. 一些隐式转换都是基于Number完成的 isNaN(),数字运算,字符串==数字

  7. 弱转换 parseInt() parseFloat()

  8. 【】 !=true 都转换成数字,Number(【】)0 Number(true)1

  9. == 比较规律:对象=字符串,对象转化为字符串, null=undefined 但是和其他值不相等,NaN和谁都不想等 剩下两边不同都是转换为数字

  10. .[]==false都转换为数字, 0]先转换为"(toString)在转换为数0(Number)false变为数字0

  11. ![]==false 运算符优先级![]
    再算比较 ![D] 转换为布尔值进行取反(把
    其它类型转换为布尔类型遵循的规律:只有0/NaN/null/undefined/"五个值是false,其余的都是true ) => false false == false true

  12. 大括号在运算符前面:1.在没有使用小括号处理优先级的情况下不认为是数学运算,加小括号才算2.出现在运算符的后面认为是数学运算

在这里插入图片描述在这里插入图片描述在这里插入图片描述

res为NaN,NaN为number数据类型

parseInt处理值是字符串,从字符串左侧开始查找有效数字字符,遇到非有效数字字符则停止查找。如果不是字符串需要先转换为字符串然后在开始查找接口
Number直接调用浏览器最底层的数据类型。其中 true 为 1,false 为0 ,null 为0 underdefined 为NaN,字符串中必须保证都是有效数字才会转换为数字,否则都是NaN
0 NaN null undefined 空字符串转换为布尔值是假
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述字符串+任何值都是字符串,({})。toString()为【object,Object】

string
boolean
null
undefined
symbol
bigint

引用数据类型(2)

object
function

数据类型检测

typeof
  1. 检测数据类型的逻辑运算符 typeof(val) 返回当前值的数据类型 typeof(null) 为object

  2. 所有值在内存中都是按照按01存储

返回结果都是字符串,局限性:null的结果是object,而且不能细分对象类型
在这里插入图片描述

instance

检测是否为某个类的实例

constructor

检测构造函数

Object.prototype.toString.call

检测数据类型

闭包

js之所以能够在浏览器中运行,是因为浏览器给js提了执行的环境=》栈内存
第一题12 第二个 13 第三个12
在这里插入图片描述浏览器端中window指向的是全局变量
栈内存:提供代码执行环境
堆内存:存放东西(存档的是属性方法)
执行上下文:每个代码的上下文执行环境
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
引用值比较复杂,需要创建一个堆内存

在这里插入图片描述
在这里插入图片描述下面程序结果:报错
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在JS中对象的属性名是什么格式的?
普通对象的属性名只能是“字符串”(普通对象的属性名可以是基本数据类型值)
Map这种数据结构支持对象作为属性名
但是普通对象的属性名不能是对象,如果是对象,需要转换为字符串存储

输出:培训
在这里插入图片描述
Symbol是唯一的
输出:珠峰
在这里插入图片描述({n:‘1’}.toString() [object,object]

输出:培训
普通对象toString是调取Object.prototype.toString是用来检测数据类型的

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值