【2024】前端学习笔记14-JavaScript常用数据类型-变量常量
学习笔记
- 1.JavaScript常用数据类型
- 1.1.Number(数字)
- 1.2.String(字符串)
- 1.3.Boolean(布尔值)
- 1.4.Null(空值)
- 1.5.Undefined(未定义)
- 1.6.Object(对象)
- 1.7.Array(数组)
- 2.变量和常量
1.JavaScript常用数据类型
1.1.Number(数字)
number类型包括整数和浮点数,例如42(整数)和3.14(浮点数)。
let num1 = 20
let num2 = 2.54
JavaScript 中的数字是基于 IEEE 754 标准的双精度 64 位二进制格式。
可以进行各种算术运算,如加减乘除等。
包括一些特殊数值:Infinity(表示无穷大)和-Infinity(表示负无穷大),当一个数字超出了 JavaScript 所能表示的范围时就会出现这种情况,例如,1 / 0会得到Infinity。
NaN(Not a Number)用于表示非数字值,如0 / 0的结果是NaN。
1.2.String(字符串)
由零个或多个字符组成,字符可以是字母、数字、符号等。
字符串需要用引号(单引号’或双引号")包裹。例如’Hello, World!'或"JavaScript"。
在JavaScript中,单引号和双引号都是可以的。
let str1 = 'Hello';
let str2 = "JavaScript";
1.3.Boolean(布尔值)
只有两个值:true和false,用于表示逻辑上的真和假。
布尔值通常用于条件判断和循环控制。
1.4.Null(空值)
只有一个值null,用于表示一个空的或不存在的引用。
通常用于初始化一个变量,表示该变量目前没有指向任何对象。
let myVariable = null;
1.5.Undefined(未定义)
当一个变量被声明但没有被赋值时,它的值是undefined。
let variable;
console.log(variable); // 输出 undefined
这里variable被声明了,但是没有被赋值,所以它的值是undefined。
需要注意的是,const声明的变量如果没有初始化,会直接报错,因为const声明的变量必须在声明时赋值。
1.6.Object(对象)
对象是一种复杂的数据类型,它可以包含多个属性和方法。
属性是键 - 值对,其中键是字符串,值可以是任何数据类型。
<body><script>let person = {name: 'John',age: 30,sayHello: function() {console.log('hello,my friend');}};console.log(person.name);console.log(person.age);// 获取元素也可以使用[]方法console.log(person["age"]);person.sayHello();</script>
</body>
展示效果:可以在网页按F12的控制台中查看输出

1.7.Array(数组)
数组是一种特殊的对象,用于存储多个有序的数据。
数组中的每个元素可以是任何数据类型,并且可以通过索引来访问。
let colors = ['blue', 'green', 'red'];
添加元素:
push () 方法:在数组的末尾添加一个或多个元素,并返回新的数组长度。
let newColors = colors.push('yellow');
unshift () 方法:在数组的开头添加一个或多个元素,并将原来的元素向后移动,并返回新的数组长度。
let newColors2 = colors.push('black');
示例:
<body><script>let colors = ['blue', 'green', 'red'];let newColors = colors.push('yellow');let newColors2 = colors.unshift('black');console.log(colors);console.log(newColors);console.log(newColors2);</script>
</body>
添加的元素是向原数组添加,所以colors是返回添加后的元素
展示效果:

删除元素:
pop () 方法:删除数组的最后一个元素,并返回被删除的元素。
变量名.pop()
shift () 方法:删除数组的第一个元素,并返回被删除的元素。
变量名.shift()
修改元素:
可以直接通过索引来修改数组中的元素。
let scores = [80, 90, 70];
// 注意元素从0开始,第一个元素是0
scores[1] = 95;
console.log(scores); // 输出[80, 95, 70]
查找元素:
indexOf () 方法:返回指定元素在数组中第一次出现的索引,如果不存在则返回 - 1。
let names = ['Alice', 'Bob', 'Charlie', 'Bob'];
let index = names.indexOf('Bob');
console.log(index); // 输出1
lastIndexOf () 方法:返回指定元素在数组中最后一次出现的索引,如果不存在则返回 - 1。
let index2 = names.lastIndexOf('Bob');
console.log(index2); // 输出3
2.变量和常量
var:
var是 JavaScript 中最早用于定义变量的关键字。例如:var x = 10;。
使用var定义的变量会存在变量提升的现象。这意味着变量的声明会被提升到当前作用域的顶部。
let:
let也用于定义变量,它的基本语法和var类似,例如:let z = 30;。
与var不同,let定义的变量不存在变量提升。
const:
const用于定义常量。一旦使用const定义了一个变量并赋值,就不能再重新赋值。例如:const PI = 3.14159;
注意:JavaScript中定义变量或常量不用指定类型。
相关文章:
【2024】前端学习笔记14-JavaScript常用数据类型-变量常量
学习笔记 1.JavaScript常用数据类型1.1.Number(数字)1.2.String(字符串)1.3.Boolean(布尔值)1.4.Null(空值)1.5.Undefined(未定义)1.6.Object(对象…...
Leecode热题100-48.旋转图像
给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出…...
重学SpringBoot3-集成Redis(二)之注解驱动
更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Redis(二)之注解驱动 1. 为什么选择 Redis 作为缓存?2. 如何在 Spring Boot 中启用 Redis 缓存?2.1 …...
【React】入门Day04 —— 项目搭建及登录与表单校验、token 管理、路由鉴权实现
项目搭建 创建项目 # 使用npx创建项目 npx create-react-app my-react-app # 进入项目目录 cd my-react-app # 创建项目目录结构 mkdir -p src/{apis,assets,components,pages,store,utils} touch src/{App.js,index.css,index.js} 使用npx create-react-app创建项目࿰…...
CMake 属性之目录属性
【写在前面】 CMake 的目录属性是指在特定目录(及其子目录)范围内有效的设置。 这些属性不同于全局变量或目标(Target)属性,它们提供了一种机制,允许开发者为项目中的不同部分定义不同的构建行为。 通过目录…...
ChatGPT:引领人工智能新潮流!
一、ChatGPT 是什么? 1. ChatGPT 的强大功能和广泛应用。 ChatGPT 作为一款先进的 AI 语言模型,拥有众多强大功能。它可以进行文本生成、文本分类、情感分析、机器翻译等多种自然语言处理任务。同时,ChatGPT 还能进行对话式交互,…...
【银河麒麟高级服务器操作系统】安全配置基线相关分析全过程及解决方案
了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer.kylinos.cn 文档中心:https://documentkylinos.cn 服务器环境以及配置 【机型】物理机或虚机 【…...
用Python实现图片转ASCII艺术:图像处理与字符艺术的完美结合
解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 ASCII艺术是一种通过字符来表现图像的艺术形式,最早用于早期计算机显示器,它仅支持字符显示。如今,尽管图像分辨率和显示技术得到了极大的提升,ASCII艺术作为一种复古而别具一格的图像表现形式,仍然受到许多…...
大数据-162 Apache Kylin 全量增量Cube的构建 Segment 超详细记录 多图
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...
Redis-缓存过期淘汰策略
缓存淘汰策略 生产上redis内存设置为多少 设置为最大内存的 3/4 redis 会占用物理机多少内存 默认大小是 0,64 位系统下表示不限制内存大小,32位系统表示 3G 如何设置修改redis内存大小 config get maxmemory 查看修改方式 配置文件 单位是字节 2.…...
如何设置LED电子显示屏的屏幕参数?
LED电子显示屏因其高亮度、低能耗和长寿命等优点,在广告、信息显示等领域得到了广泛应用。正确设置屏幕参数对于确保显示屏的最佳性能至关重要。以下是LED电子显示屏设置屏幕参数的步骤: 1. 确定屏幕参数 在开始设置之前,需要了解显示屏的基本…...
Spring Boot Starter Parent介绍
引言 spring-boot-starter-parent 是一个特殊的项目,为基于 Spring Boot 的应用程序提供默认配置和默认依赖。 在本 Spring Boot 教程中,我们将深入了解所有 Spring Boot 项目内部使用的 spring-boot-starter-parent 依赖项。我们将探讨此依赖项所提供…...
【含开题报告+文档+PPT+源码】基于SpringBoot乡村助农益农平台的设计与实现
开题报告 近年来,随着社会经济的快速发展和人民生活水平的提高,人们对优质农产品的需求越来越高。然而,传统的农产品销售管理模式存在一些问题。首先,农产品供应链信息不透明,导致生产者难以了解市场需求和价格变动趋…...
数据中心运维挑战:性能监控的困境与智能化解决方案的探寻
随着数字化进程的加速,数据中心已成为企业信息架构的核心支撑,其运维管理的复杂度和重要性也随之提升。运维团队需应对设备老化、资源分配失衡、性能波动等多重难题,以确保数据中心持续高效运行。 其中,性能监控作为运维管理的关键…...
基于SSM的民宿管理系统【附源码】
基于SSM的民宿管理系统(源码L文说明文档) 目录 4 系统设计 4.1 系统概要设计 4.2 系统功能结构设计 4.3 数据库设计 4.3.1 数据库E-R图设计 4.3.2 数据库表结构设计 5 系统实现 5.1用户信息管理 5.2 房东信息管理…...
显卡 3090 vs v100
1.3090 Date: 2020 AmperePielines/ Cuda cores: 10496 2.V100 Date: 2018 VoltaPielines/ Cuda cores: 5129 3.结构 & Core比较: v100优点: v100功耗小v100较快的双精度(fp64)和混合精度(fp16fp32)pcie版的NVLink与2080ti完全一致 v100缺点: 不支持整数格式计算&…...
怎么在单片机裸机程序中移植EasyLogger?
1、介绍 EasyLogger 是一款超轻量级、高性能的C日志库,非常适合对资源敏感的软件项目。例如:IoT产品、可穿戴设备、智能家居等等。相比log4c、zlog这些知名的C日志库,EasyLogger的功能更加简单,提供给用户的接口更少,但…...
C/C++解析文件名和目录路径
文章目录 主要函数使用注意事项示例程序总结 #include <libgen.h> 是一个 C/C 语言的头文件,主要用于字符串处理,特别是在处理文件路径时。它提供了一些函数来帮助你解析文件名和目录路径。 主要函数 以下是 libgen.h 中一些常见的函数ÿ…...
Git 基本命令行操作
Git是一个开源的分布式版本控制系统,用于管理源代码和文档的版本。以下是Git的基本命令行操作: 一、配置 安装完成后,需要配置Git的用户名和邮箱,以便在提交记录时记录操作者的信息。 配置全局用户名:git config --g…...
【Rust练习】17.泛型
练习题来自:https://practice-zh.course.rs/generics-traits/generics.html 函数 1 // 填空 struct A; // 具体的类型 A. struct S(A); // 具体的类型 S. struct SGen<T>(T); // 泛型 SGen.fn reg_fn(_s: S) {}fn gen_spec_t(_s: SGen<A&…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
