【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

结果未达到预期,

复制代码
在一个对象中需要增加一个相同的属性名
相关推荐
明道源码几秒前
Kotlin 控制流、函数、Lambda、高阶函数
android·开发语言·kotlin
橙子19911016几秒前
在 Kotlin 中,ViewModel 的获取
开发语言·vue.js·kotlin
脚踏实地的大梦想家3 分钟前
【Go】P8 Go 语言核心数据结构:深入解析切片 (Slice)
开发语言·数据结构·golang
hweiyu003 分钟前
Gradle 构建脚本迁移:从 Groovy DSL 到 Kotlin DSL,语法与技巧对比
开发语言·kotlin·gradle
杯莫停丶4 分钟前
设计模式之:享元模式
java·设计模式·享元模式
遥远_13 分钟前
Java微服务无损发布生产案例
java·spring·微服务·优雅停机·java微服务无损发布
苹果醋317 分钟前
学习札记-Java8系列-1-Java8新特性简介&为什么要学习Java8
java·运维·spring boot·mysql·nginx
Tony Bai18 分钟前
【Go 网络编程全解】13 从 HTTP/1.1 到 gRPC:Web API 与微服务的演进
开发语言·网络·http·微服务·golang
武子康26 分钟前
Java-159 MongoDB 副本集容器化 10 分钟速查卡|keyfile + –auth + 幂等 init 附 docker-compose
java·数据库·mongodb·docker·性能优化·nosql·1024程序员节
峥嵘life27 分钟前
Android EDLA开发认证说明和开发流程
开发语言·1024程序员节