JavaScript 基本数据类型的详解

news2024/9/30 21:20:59

JavaScript的基本数据类型

在这里插入图片描述

以下都是JS内置的几种类型

数据类型描述
number数字,不区分整数和小数
string字符串类型
booleantrue 真, false 假
undefined表示未定义的值
null只有唯一的值 null,表示空值

number 数字类型

JavaScript 中不区分整数和浮点数,统一都使用 “数字类型” 来表示

示例代码

<script>
    let a =10;
    console.log(typeof(a))
    a= a/3
    console.log(a)
    console.log(typeof(a))
</script>

运行结果
image-20240301130811602

特殊的数字值:
Infinity:无穷大, 大于任何数字,表示数字已经超过了 JS 能表示的范围.
-Infinity: 负无穷大, 小于任何数字,表示数字已经超过了 JS 能表示的范围.
NaN: 表示当前的结果不是一个数字

1.Infinity的示例代码

<script>
    console.log(10/0)
</script>

运行结果

在这里插入图片描述

2.-Infinity的示例代码

<script>
    console.log(-10/0)
</script>

运行结果

image-20240301132055825

3.NaN的示例代码

<script>
    console.log("hahaha"-1)
</script>

运行结果

image-20240301132302455


string 字符串类型

注:字符串字面值需要使用引号引起来,单引号双引号均可

示例

<script>
    let a ='哈哈哈'
    a = 'JS'
</script>

字符串中本身已经包含引号的情况

1.正确搭配使用单双引号

示例1:

<script>
    let a ='js'
    a ="哈哈哈'js'"
</script>

示例2:

<script>
    let b = "js"
    b = '哈哈哈"js"'
</script>

2.使用转义字符 \ " 来表示字符串内部的引号

示例:

<script>
    let name = "liaofeiyang"
    name = "my name is \"liafeiyang\""
    alert(name)
</script>

运行效果

image-20240301134848784

一些其它的转义字符,比如: \t => t ,\n => n ,\\ => \


字符串求长度

使用 String 的 length 属性即可

示例代码

<script>
    let a = "哈哈哈"
    console.log(a.length)
</script>

运行效果
在这里插入图片描述

字符串拼接

使用 + 进行拼接

示例代码

<script>
    let a = "小白"
    console.log("fly: "+ a)
</script>

运行结果
image-20240301142841509

数字和字符串也可以进行拼接

示例

<script>
    console.log("10" + 10)
</script>

运行结果

image-20240301143156988


boolean 布尔类型

表示 “真” 和 “假”,当Boolean参与运算时会被做 1 和 0 来看待,和 C 语言一样

示例1

<script>
    let a  = true
    console.log(typeof(a))
    a = a + 1
    console.log("a的值等于:"+a+" a的类型:"+typeof(a))
</script>

运行结果

image-20240301144012392

示例2

<script>
    let a  = false
    console.log(typeof(a))
    a = a + 1
    console.log("a的值等于:"+a+" a的类型:"+typeof(a))
</script>

运行结果
在这里插入图片描述


undefined 未定义数据类型

1.如果一个变量被定义了,但是没有被赋值,也就是没有被初始化过, 此时这个变量就是 undefined, 是 undefined 类型的

示例代码

<script>
    let a;
    console.log(a)
</script>

运行结果

image-20240301152223643

2.undefined和字符串进行相加, 结果是进行字符串拼接

示例代码

<script>
    let a;
    console.log(a + "10")
</script>

运行结果

image-20240301152603771

3.undefined和数字进行相加,结果为NaN

示例代码

<script>
    let a;
    console.log(a + 10)
    console.log(a + true)
</script>

运行结果

image-20240301153245029


null 空值类型

null 表示当前的变量是一个 “空值”

注: null 和 undefined 都表示取值非法的情况, 但是侧重点不同
undefined 表示当前的变量未定义,而 null 是被定义/被赋值了的,只不过它的值就是 null

示例代码

<script>
    let a;
    let b = null;
    console.log(a + 10); //运行结果为NaN
    console.log(b + 10); //运行结果是10
</script>

运行结果
image-20240301154109382

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1485072.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用mysqld --install命令时出现MSVCR120.dll文件丢失错误

Visual C 2013 and Visual C Redistributable Package https://support.microsoft.com/en-us/help/3179560/update-for-visual-c-2013-and-visual-c-redistributable-package 进去之后先找到自己的版本&#xff0c;x64还是x86&#xff0c;下载 vcredit &#xff0c;进行安装即…

Sora核心之一:可变时长、分辨率、尺寸

Overview 一、总览二、摘要三、引言四、方法4.1、架构改动4.2、训练改变4.3、NaViT的效率 NaViT 一、总览 题目: Patch n’ Pack: NaViT, a Vision Transformer for any Aspect Ratio and Resolution 机构&#xff1a;Google DeepMind 论文: https://arxiv.org/pdf/2307.06304…

AG32 MCU 如何进入低功耗模式

默认情况下&#xff0c;微控制器(MCU)在系统复位或电源复位后处于运行模式。当CPU不需要持续运行时&#xff0c;可以使用几种低功耗模式来节省功耗。这是由用户选择的模式&#xff0c;给出了低功耗&#xff0c;短启动时间和可用的唤醒源之间的最佳妥协。 AG32VF 系列MCU具有以下…

LeetCode 刷题 [C++] 第226题.翻转二叉树

题目描述 给你一棵二叉树的根节点 root &#xff0c;翻转这棵二叉树&#xff0c;并返回其根节点。 题目分析 深度优先搜索&#xff08;DFS&#xff09;- 递归方式 对于二叉树的镜像问题&#xff0c;很容易想到的就是使用递归来解决&#xff0c;自底向上依次翻转每一个节点…

python类型注解,多态详解

目录 1.类型注解 1.变量的类型注解 2.函数&#xff08;方法&#xff09;的类型注解 3.union类型 2.多态 抽象类 1.类型注解 1.变量的类型注解 #基础数据类型注解 import randomv1 : int 10 v2 : str "aaa" v3 : bool True#类对象类型注解 class student:p…

kafka文件存储机制和消费者

1.broker文件存储机制 去查看真正的存储文件&#xff1a; 在/opt/module/kafka/datas/ 路径下 kafka-run-class.sh kafka.tools.DumpLogSegments --files ./00000000000000000000.index 如果是6415那么这个会存储在563的log文件之中&#xff0c;因为介于6410和10090之间。 2.…

linux的通信方案(SYSTEM V)

文章目录 共享内存(Share Memory)信号队列&#xff08;Message Queue&#xff09;信号量(semaphore) 进程间通信的核心理念&#xff1a;让不同的进程看见同一块资源 linux下的通信方案&#xff1a; SYSTEM V 共享内存(Share Memory) 特点&#xff1a;1.共享内存是进程见通信最…

图论 - 最小生成树(Prime、Kruskal)

文章目录 前言Part 1&#xff1a;Prim算法求最小生成树1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 Part 2&#xff1a;Kruskal算法求最小生成树1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 前言 本篇博客介绍两种求最小生成树的方法&#xff…

使用OpenCV和mediapipe实现手部信息抓取

目录 运行效果 挨行解读 &#xff08;1&#xff09;初始化MediaPipe Hand模块 &#xff08;2&#xff09;打开摄像头 &#xff08;3&#xff09;初始化计时器 &#xff08;4&#xff09;开始程序主题部分 &#xff08;5&#xff09;读取视频帧 &#xff08;6&#xff09…

c++基础知识补充5

隐式类型转换型初始化&#xff1a;如A a1, 与全局类没有区别&#xff0c;只是受主类的类域限制&#xff0c;内部类天生是主类的友元 采用匿名构造如A()代替A aa可以加速编译器优化 接收建议新创建一个对象

基于springboot+vue的科研工作量管理系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

大模型(LLM)的token学习记录-I

文章目录 基本概念什么是token?如何理解token的长度&#xff1f;使用openai tokenizer 观察token的相关信息open ai的模型 token的特点token如何映射到数值&#xff1f;token级操作&#xff1a;精确地操作文本token 设计的局限性 tokenizationtoken 数量对LLM 的影响训练模型参…

c语言--qsort函数(详解)

目录 一、定义二、用qsort函数排序整型数据三、用qsort排序结构数据四、qsort函数的模拟实现 一、定义 二、用qsort函数排序整型数据 #include<stdio.h> scanf_S(int *arr,int sz) {for (int i 0; i < sz; i){scanf("%d", &arr[i]);} } int int_cmp(c…

【GitHub】修改默认分支

GitHub的默认分支为main&#xff0c;但我们常常习惯使用master作为默认分支&#xff0c;那在GitHub上如何将master修改为默认分支呢&#xff1f; 全局修改 点击头像&#xff0c;选择菜单栏中的设置 输入master作为默认分支&#xff0c;然后执行updating即可&#xff01; 单项…

【Java数据结构】——二叉搜索树

目录 &#x1f388;概念 &#x1f388;操作-查找 &#x1f388;操作-插入 &#x1f388;操作-删除&#xff08;难点&#xff09; &#x1f388;概念 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树 : 若它的左子树不为空&a…

【Qt学习笔记】(四)Qt窗口

Qt窗口 1 菜单栏1.1 创建菜单栏1.2 在菜单栏中添加菜单1.3 创建菜单项1.4 在菜单项之间添加分割线1.5 给菜单项添加槽函数1.6 给菜单项添加快捷键 2 工具栏2.1 创建工具栏2.2 设置停靠位置2.3 设置浮动属性2.4 设置移动属性2.5 添加 Action 3 状态栏3.1 状态栏的创建3.2 在状态…

Matlab 机器人工具箱 动力学

文章目录 R.dynR.fdynR.accelR.rneR.gravloadR.inertiaR.coriolisR.payload官网:Robotics Toolbox - Peter Corke R.dyn 查看动力学参数 mdl_puma560; p560.dyn;%查看puma560机械臂所有连杆的动力学参数 p560.dyn(2);%查看puma560机械臂第二连杆的动力学参数 p560.links(2)…

mac命令行下计算文件SHA-256散列值

源起 从国内的第三方网站下载了Android sutiod的zip包下载地址&#xff0c;为了安全起见还是得跟Android官网上的对应的zip包的SHA值做下对比。以前是经常使用md5命令的&#xff0c;所以理论在命令行下应该是有对应的命令行工具可以计算SHA值的。后来搜索到可以用 shasum命令来…

Java中线程安全的集合类

在先前的文章中我们已经讲过了原子类(线程安全的基本类型&#xff0c;基于CAS实现)&#xff0c;详见常见锁策略&#xff0c;synchronized内部原理以及CAS-CSDN博客 &#xff0c;我们在来讲一下集合类&#xff0c;在原来的集合类&#xff0c;大多数是线程不安全的&#xff0c;虽…

深入了解 Android 中的 RelativeLayout 布局

RelativeLayout 是 Android 中常用的布局之一&#xff0c;它允许开发者基于子视图之间的相对位置来排列界面元素。在这篇博客中&#xff0c;我们将详细介绍 RelativeLayout 的各种属性&#xff0c;并提供代码示例和解释。 第一个示例 <RelativeLayoutandroid:layout_width…