前端面试题-js数据类型-怎么判断是对象还是数组-字符串常用方法-数组常用方法

发布时间:2024年01月24日

JS数据类型有哪些

数据类型类型描述
Number基本类型,值类型数值类型是整型和浮点型的集合,具体表示什么要看具体的赋值情况
String基本类型,值类型字符串类型,保存0到16位的UNICODE代码组成的字符序列
Boolean基本类型,值类型布尔类型,有true或false的两个取值
Null基本类型,引用类型只有有一个值,表示一个空的对象引用
Undefined基本类型值类型只有一个值 表示一个变量声明后未被赋予任何值
Symbol基本类型,值类型唯一值
Object复杂类型,引用类型对象类型,本质是一个无序的键值对的列表,类似与集合,json形式
Array复杂类型,引用类型数组类型,是数据的有序列表
Function复杂类型,引用类型函数类型,函数是对象,函数名是指针。多次赋值后面的的赋值会覆盖前的

一般说的JS的数据类型是前7个 7中数据类型 后两种也有归属于object的说法

值类型和引用类型的区别

1.值类型内容长度固定,保存值的存在范围,引用类型内容长度不固定,可以存储不定长度的数据
2.值类型只能单纯的存储值,如整型,字符串等。而引用类型可以存储对象的堆地址,可以使多个变量指向同一个对象
3.引用类型可以缓解栈的存储压力
4.在Js语法中基本数据类型不能动态添加任何属性而引用数据类型可以添加属性

数组的常用方法

方法描述
push数组新增方法 往最后位置插入一个值
unshift数组新增方法 往最前位置插入一个值
pop数组删除方法 最后位置删除一个
shift数组删除方法 最先位置删除一个
map数组遍历方法 返回一个新数组
indexOf数组查找方法 查找目标值的第一个索引
lastIndexOf数组查找方法 查找目标值的最后一个索引
tostring数组转换为字符串,元素直接用,号分隔
Join数组拼接成字符串方法 传入的参数 是拼接的分隔
concat数组合并方法 合并在后
arr[idx]数组根据索引取值
every数组遍历方法 所有值满足条件返回true 有一个不满足返回false
some数组遍历方法 有一个值满足返回true 都不满足返回false
splice数组删除方法 指定位置删除多少元素
slice数组截取方法 从哪里开始截取 截取到哪里 返回新的数组
sort数组排序方法 数组原地修改
reserve数组反转方法 数组原地修改
inculdes数组查找方法 是否包含目标值 返回true和false

哪些方法会改变原数组

pop push shift unshift sort reserve splice 这些常用的方法会改变原数组

字符串常用方法

方法描述
split字符分割成数组的方法 返回一个数组 接受的参数是截取的值
substr截取字符串方法 返回截取的值
trim字符串去空方法 返回首位没有空格的字符串
slice字符串截取方法 返回截取的值
concat字符串拼接方法 将两个字符串拼接到一起
replace字符串替换方法 匹配到的第一个目标值替换
replaceall字符替换方案 匹配到的所有目标值替换
charAt字符串查找,根据索引位置返回字符串本身
charcodeAt字符串查找,根据字符串返回字符的ASSCI码
indexOf字符串查找方法 返回目标值的第一个索引
lastIndexOf字符串查找方法 返回目标值的最后一个索引
inculdes字符串查找方法 是否包含目标值 返回true和false
startWith字符串查找方法 是否以目标值开头 返回true或fasle
endWith字符串查找方法 是否以目标值结尾 返回true或fasle

对象常用方法

方法描述
object.keys(对象)返回对象key作为数组项的数组
object.values(对象)返回对象value作为数组项的数组
object.entries(对象)返回一个二维数组 key作为数组项的0位置 value作为数组项的1位置

怎么判断是对象还是数组

1.Array.isArray(要检测的值) 是数组返回true 不是数组返回false
2.instanceof

要检测的值 instanceof Array (数据类型)//返回true 或false

在这里插入图片描述
3.constructor

[](要检测的目标值).constructor == Array(数据类型)//返回true 或false

4.Object.prototype.toString.call(arr) 把对象转换成一个字符串和已知对象去对比
在这里插入图片描述

文章来源:https://blog.csdn.net/qq_44428688/article/details/135814696
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。