- js的数据类型
口诀:u are so nb (你怎么这么牛x)
u==》undefined
s==》string、symbol
o==》object
n==》null、number
b==》boolean、bigInt(不常用的)
2. js的基本数据类型和引用数据类型
js的基本数据类型(也称简单数据类型):undefined、string、null、number、boolean
js的引用数据类型:object和function
3. js的基本数据类型和引用数据类型的区别
基本数据类型是存在栈中(占据空间小)
引用数据类型都是存储在堆中(占据空间大),同时会在栈中留有一个指针,当指正被调用时,就会指向堆中相应的地址,然后相关引用类型的数据就会被调用
4. Object.assign的理解
作用:Object.assign可以实现对象的合并。语法:Object.assign(target, ...sources)
![](https://i-blog.csdnimg.cn/blog_migrate/e829301e6ed35dee1b76760a4986b51d.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/e07ec4b837bdaf9a9733f5cab958b0c0.png)
tip:也可以用作浅拷贝,来复制对象
![](https://i-blog.csdnimg.cn/blog_migrate/dc7bc0f2e9c59f2eda450371c4ce3665.png)
运行的结果:
![](https://i-blog.csdnimg.cn/blog_migrate/4d614aed2e83fd77a29c9ec8dd3c8733.png)
5. map和forEach的区别
map返回结果值是可以执行完回调然后返回一个新的数组,但forEach没有返回值,只会遍历所有函数并执行回调
6. for (value) of (Array) ------>for...of ...的用法
for...of...不可以用在普通对象上,只限于用于迭代器例如Array, Map, Set, String, TypedArray, arguments对象等等,遍历的是数组的每一项
![](https://i-blog.csdnimg.cn/blog_migrate/0f930d8ba998604c054521e89469602d.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/49284778b99dd7594396b6681d8e29d8.png)
7. for...in...的用法
for...of...可以用在普通对象上,可以遍历对象的属性,如果遍历的是数组的话,则只会遍历出相应的下标
![](https://i-blog.csdnimg.cn/blog_migrate/bc295dabb05a78221936012d98f35773.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/fa5a8f69a15013547dce841b58173d71.png)
8. 语法:str.indexOf(searchValue [, fromIndex])的使用
searchValue是要被查找的字符串值
fromIndex表示要开始查找的位置下标,如果没有找到的话就会返回-1
如果formIndex比数组长度长的话就会返回数组字符串的长度str.length
![](https://i-blog.csdnimg.cn/blog_migrate/6ad89a80f6e8d16cb5040a0e5665df1d.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/fa57e74641693a4577d2f64c11bf8b31.png)
9. instanceof的使用
child instanceof parent 判断child是否属于parent类型,如果是则返回true,反之则返回false
![](https://i-blog.csdnimg.cn/blog_migrate/753334aaae0cd11b4745d0bbae3d00d2.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/71e695943f0e21d8eda6caa987746ebc.png)
10. 伪数组转化为数组的方法
可以使用[...arr] 或者 Array.from(arr)
![](https://i-blog.csdnimg.cn/blog_migrate/56074aa5aa1356c6e964e88912017ee4.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/122a3bcca571375ba34545ee081e822e.png)
11. 数组去重
![](https://i-blog.csdnimg.cn/blog_migrate/02c292403e8553a1bf35fb357b3761cb.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/bdc37bba35eae55c62f0143f4b481493.png)
第三种方法:
![](https://i-blog.csdnimg.cn/blog_migrate/21ab09f230fafd08cc1ab718843e79da.png)
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/d9b133c5c41086bfb2ff43c71ccfa612.png)