【Javascript】基础数据类型

目录

基础数据类型

1.number

字面量声明

数字对象方式声明

整数判断

指定返回小数位数

NaN-表示非数字值

浮点精度

解决误差

String

字面量声明

数字对象声明

连接运算符

获取长度

大小写转换

转换成大写

转换成小写

​编辑

移除空白

获取单字符

​编辑

截取字符串

​编辑

查找字符串

替换字符串

类型转换

[Boolean(布尔值)](#Boolean(布尔值))

字面量声明

隐式转换

string

Number

数组不参与比较的时候

空数组与Boolean比较时

undefined,null,symbol

undefined与null基本同义

null是一个表示"无"的对象,转为数值时为0

打印null的数据类型

undefined是一个表示"无"的原始值,转为数值时为NaN

数值与undefined相加得NaN

undefined(尚未赋值)

变量声明但是没有赋值

函数没有返回值时,默认返回undefined

null

symbol

​编辑


基础数据类型

复制代码
Number   String   Boolean  Undefined   Null   Symbol

数据保存在栈内存⾥

1.number

字面量声明

数字对象方式声明

整数判断

指定返回小数位数

NaN-表示非数字值

是数字值则返回false,反之返回true

浮点精度

js语言在浮点数计算上会有精度误差问题

解决误差

String

字面量声明

数字对象声明

连接运算符

获取长度

大小写转换

转换成大写
转换成小写

移除空白

移除前后对比

获取单字符

截取字符串

slice(1,4)意思是从字符串第一个字符开始截取,截取到第四个字符

字符串从0开始,及asdfg 第一个字符为s,第四个字符为g,但不打印

slice(start(打印),end(不打印))

查找字符串

查找某个字符,从第几个字符开始找

替换字符串

类型转换

Boolean(布尔值)

字面量声明

声明的时候加引号,打印出来的是字符串类型

声明的时候不加引号,打印出来的是布尔类型

隐式转换

|-----------|--------------|----------|
| | true | false |
| String | 非空字符串 | 空字符串 |
| Number | 非0的数值 | 0/NaN |
| Array | 数组不参与比较时 | 参与比较的空数组 |
| Object | ✅ | |
| undefined | | ✅ |
| null | | ✅ |
| NaN | | ✅ |

string
Number
复制代码
数组不参与比较的时候
空数组与Boolean比较时

数组之间参与比较

当其他类型与Boolean类型对比时,会将其他类型先转换为数值类型再对比

undefined,null,symbol

undefined与null基本同义

null是一个表示"无"的对象,转为数值时为0

打印null的数据类型

面试的时候可能会问到null是一个什么类型的

对象型的

undefined是一个表示"无"的原始值,转为数值时为NaN

数值与undefined相加得NaN

undefined(尚未赋值)

变量声明但是没有赋值
函数没有返回值时,默认返回undefined

null

复制代码
null表示"没有对象",即该处不应该有值。
复制代码
用法:(1) 作为函数的参数,表示该函数的参数不是对象(2) 作为对象原型链的终点
复制代码
     Object.getPrototypeOf(Object.prototype) // null

symbol

假设定义了一个a变量

在a的变量定义了一个b属性,并且给b属性赋值了一个字符串1

假设再b赋值一个2

结果未达到预期,

复制代码
在一个对象中需要增加一个相同的属性名
相关推荐
yangmc0422 分钟前
判断子序列
开发语言·数据结构·c++·算法·矩阵·图论
李小白6644 分钟前
二叉树的练习题(中)
java·数据结构·算法
骑鱼过海的猫1231 小时前
【redis】redis
java·数据库·redis
漫天转悠1 小时前
Java21和Java8性能优化详细对比
java
昇腾CANN1 小时前
Ascend C算子性能优化实用技巧05——API使用优化
c语言·开发语言·性能优化
y25081 小时前
《抽象类和接口》
java·开发语言
脸红ฅฅ*的思春期1 小时前
Java安全—log4j日志&FastJson序列化&JNDI注入
java·安全·log4j·fastjson·jndi注入
沐泽Mu1 小时前
嵌入式学习-C嘎嘎-Day03
c语言·开发语言·c++·学习
NMBG221 小时前
[JAVAEE] 网络编程
java·服务器·网络·tcp/ip·udp·java-ee
chunmiao30321 小时前
自建k8s集群,利用开源的GitLab、Jenkins和Harbor实现CI/CD和DevOps的过程回顾
java·开发语言