JS数组异常?

资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!

注:Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。

  • ==比较之前会先进行类型转换,即不会对类型进行比较。例如:
  • ===会比较数值和类型。例如:

JS在使用运算符号或者对比符时,会自带隐式转换,规则如下:

  • 如果对象的属性值之一本身就是一个对象
  • 如果属性值中的一个是NaN(在JavaScript中,是不是等于自己唯一的价值?)
  • 如果一个属性的值为undefined,而另一个对象没有这个属性(因而计算结果为不确定?)
  • 无法再意外创建全局变量。
  • 会使引起静默失败(silently fail,即:不报错也没有任何效果)的赋值操抛出异常。
  • 试图删除不可删除的属性时会抛出异常(之前这种操作不会产生任何效果)。
  • 要求函数的参数名唯一。
  • 捕获了一些常见的编码错误,并抛出异常。
  • 禁用令人困惑或欠佳的功能。
  • 缺失许多开发人员已经习惯的功能。
  • 以不同严格模式编写的脚本合并后可能导致问题。
  • map: 遍历数组,返回回调返回值组成的新数组
  • join: 通过指定连接符生成字符串
  • concat: 连接数组,不影响原数组, 浅拷贝
  • push:添加新元素到数组末尾,返回数组长度
  • pop:移除数组最后一个元素,返回元素本身
  • unshift:添加新元素到数组开头,返回数组长度
  • shift:移除数组首个元素,返回元素本身
// 此处的array接受map方法运算之后的返回值 // 但是map方法并不能改变原来的数组
  • 能用forEach()做到的,map()同样可以。反过来也是如此。
  • map()会分配内存空间存储新数组并返回,forEach()不会返回数据。

各种循环遍历的比较地址:

  • typeof: 适合基本的数据类型和函数
  • instanceof: 判断对象类型,基于原型链去判断。
  • constructor: 返回对创建此对象的函数的引用
存储的值大小不定,可动态调整
由系统自动分配内存空间 由开发人员通过代码分配
空间大,但是运行效率相对较低
无序存储,可根据引用直接获取

我要回帖

更多关于 函数处理数组输入时行为异常 的文章

 

随机推荐