JavaScript的基础数据类型
一、JavaScript中的数组
- 定义
- 数组是一种特殊的对象,用于存储多个值。在JavaScript中,数组可以包含不同的数据类型,如数字、字符串、对象、甚至其他数组。
- 数组的创建有两种常见方式:
- 字面量表示法:
let fruits = ['apple', 'banana', 'cherry'];
- 使用
Array
构造函数:let numbers = new Array(1, 2, 3);
- 字面量表示法:
- 特性
- 数组的长度可以动态变化。可以通过
push()
方法在末尾添加元素,通过pop()
方法移除末尾元素。let myArray = [1, 2]; myArray.push(3); // [1, 2, 3] myArray.pop(); // [1, 2]
- 数组可以包含不同类型的数据:
let mixedArray = [1, 'string', {name: 'John'}, [4, 5]];
- 数组的长度可以动态变化。可以通过
二、索引
- 定义
- 数组中的每个元素都有一个对应的索引(也叫下标)。在JavaScript中,数组索引从0开始。
- 例如,在数组
[10, 20, 30]
中,10
的索引是0,20
的索引是1,30
的索引是2。
- 访问元素
- 通过索引可以访问数组中的元素。使用方括号
[]
语法,在方括号内传入索引值。let myArray = [10, 20, 30]; console.log(myArray[1]); // 20
- 通过索引可以访问数组中的元素。使用方括号
- 修改元素
- 也可以通过索引修改数组中的元素。
let myArray = [10, 20, 30]; myArray[1] = 25; console.log(myArray); // [10, 25, 30]
- 也可以通过索引修改数组中的元素。
三、元素
- 定义
- 数组中的每一个值都被称为元素。元素可以是任意数据类型。
- 操作元素
- 除了上面提到的通过索引访问和修改元素外,还有很多方法可以操作数组元素。
- 添加元素
- 除了
push()
方法在末尾添加元素外,还可以使用unshift()
方法在数组开头添加元素。let myArray = [2, 3]; myArray.unshift(1); console.log(myArray); // [1, 2, 3]
- 除了
- 删除元素
- 除了
pop()
方法移除末尾元素外,shift()
方法可以移除数组开头的元素,splice()
方法可以移除指定位置的一个或多个元素。let myArray = [1, 2, 3]; myArray.shift(); console.log(myArray); // [2, 3] myArray.splice(1, 1); console.log(myArray); // [2]
- 除了
- 遍历元素
- 可以使用
for
循环、forEach()
方法等遍历数组中的元素。let myArray = [10, 20, 30]; for (let i = 0; i < myArray.length; i++) {console.log(myArray[i]); } myArray.forEach(element => {console.log(element); });
- 可以使用
JavaScript 的常量、数据类型和算术运算符的
常量:在 JavaScript 中,常量是指其值在程序执行过程中不能被改变的量。通常使用关键字const
来定义常量。
数据类型:
- 数值类型:包括整数和浮点数。
- 字符串类型:由字符组成的序列。
- 布尔类型:表示真或假两种状态。
- 对象类型:包括普通对象、数组、函数等。
- 特殊类型:如
null
(表示空值)和undefined
(表示未定义)。
算术运算符:
- 加法运算符:
+
,用于两个数的相加。 - 减法运算符:
-
,用于两个数的相减。 - 乘法运算符:
*
,用于两个数的相乘。 - 除法运算符:
/
,用于两个数的相除。 - 取余运算符:
%
,用于计算两个数相除的余数。
这张图片是关于JavaScript的概念、作用和组成的总结。
JavaScript的概念、作用组成
1. 概念
JavaScript是一种运行在客户端(浏览器)的编程语言。
2. 作用
- 网页特效:监听用户的一些行为让网页作出对应的反馈。例如,当用户点击按钮时,弹出一个提示框。
- 表单验证:针对表单数据的合法性进行判断。例如,在用户注册页面,检查用户输入的邮箱格式是否正确。
- 数据交互:获取后台的数据,渲染到前端。例如,通过AJAX技术从服务器获取数据并在网页上显示。
- 服务端编程:使用Node.js进行服务端编程。例如,使用Node.js搭建服务器,处理HTTP请求。
3. 组成
- ECMAScript:它规定了JavaScript的语法和基本对象。
- DOM(文档对象模型):它允许JavaScript操作HTML和XML文档中的元素。例如,通过JavaScript改变网页中某个元素的样式或内容。
- BOM(浏览器对象模型):它提供了与浏览器窗口进行交互的对象和方法。例如,通过JavaScript打开或关闭浏览器窗口、获取浏览器的尺寸等。
这张图通过简洁的方式概括了JavaScript的主要特点和组成部分,有助于快速了解JavaScript在网页开发中的应用。
这张图片是关于变量的学习思维导图,主要内容如下:
变量
1. 变量概念和作用
- 容器:变量是一种容器。
- 变量的本质:在内存中开辟一个空间。
- 声明赋值的几种写法:未详细列出,可能包括不同的变量声明和赋值方式。
2. 变量命名规则和规范
- 命名规则和规范
- 规则
- 由字母、数字、下划线、$符号组成,不能以数字开头。
- 不能是关键字和保留字,例如:
var
、for
、while
、const
。 - 严格区分大小写。
- 规范
- 变量名必须有意义。
- 遵守小驼峰式命名法。
- 规则
- 练习:大厂面试题。
相关文章:

JavaScript的基础数据类型
一、JavaScript中的数组 定义 数组是一种特殊的对象,用于存储多个值。在JavaScript中,数组可以包含不同的数据类型,如数字、字符串、对象、甚至其他数组。数组的创建有两种常见方式: 字面量表示法:let fruits [apple…...

第三讲 架构详解:“隐语”可信隐私计算开源框架
目录 隐语架构 隐语架构拆解 产品层 算法层 计算层 资源层 互联互通 跨域管控 本文主要是记录参加隐语开源社区推出的第四期隐私计算实训营学习到的相关内容。 隐语架构 隐语架构拆解 产品层 产品定位: 通过可视化产品,降低终端用户的体验和演…...

JDBC编程---Java
目录 一、数据库编程的前置 二、Java的数据库编程----JDBC 1.概念 2.JDBC编程的优点 三.导入MySQL驱动包 四、JDBC编程的实战 1.创造数据源,并设置数据库所在的位置,三条固定写法 2.建立和数据库服务器之间的连接,连接好了后ÿ…...

Python绘制太极八卦
文章目录 系列目录写在前面技术需求1. 图形绘制库的支持2. 图形绘制功能3. 参数化设计4. 绘制控制5. 数据处理6. 用户界面 完整代码代码分析1. rset() 函数2. offset() 函数3. taiji() 函数4. bagua() 函数5. 绘制过程6. 技术亮点 写在后面 系列目录 序号直达链接爱心系列1Pyth…...

Spring框架特性及包下载(Java EE 学习笔记04)
1 Spring 5的新特性 Spring 5是Spring当前最新的版本,与历史版本对比,Spring 5对Spring核心框架进行了修订和更新,增加了很多新特性,如支持响应式编程等。 更新JDK基线 因为Spring 5代码库运行于JDK 8之上,所以Spri…...

Linux关于vim的笔记
Linux关于vim的笔记:(vimtutor打开vim 教程) --------------------------------------------------------------------------------------------------------------------------------- 1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键…...

linux mount nfs开机自动挂载远程目录
要在Linux系统中实现开机自动挂载NFS共享目录,你需要编辑/etc/fstab文件。以下是具体步骤和示例: 确保你的系统已经安装了NFS客户端。如果没有安装,可以使用以下命令安装: sudo apt-install nfs-common 编辑/etc/fstab文件&#…...

【vue】导航守卫
什么是导航守卫 在vue路由切换过程中对行为做个限制 全局前置守卫 route.beforeEach((to, from, next)) > {// to是切换到的路由// from是正要离开的路由// next控制是否允许进入目标路由next(false); //不允许 }路由级别的导航守卫 const routes [{path: /User,name: U…...

基于Matlab实现LDPC编码
在无线通信和数据存储领域,LDPC(低密度奇偶校验码)编码是一种高效、纠错能力强大的错误校正技术。本MATLAB仿真程序全面地展示了如何在AWGN(加性高斯白噪声)信道下应用LDPC编码与BPSK(二进制相移键控&#…...

PostgreSQL 中约束Constraints
在 PostgreSQL 中,约束(Constraints)是用于限制进入数据库表中数据的规则。它们确保数据的准确性和可靠性,通过定义规则来防止无效数据的插入或更新。PostgreSQL 支持多种类型的约束,每种约束都有特定的用途和语法。以…...

✨系统设计时应时刻考虑设计模式基础原则
目录 💫单一职责原则 (Single Responsibility Principle, SRP)💫开放-封闭原则 (Open-Closed Principle, OCP)💫依赖倒转原则 (Dependency Inversion Principle, DIP)💫里氏代换原则 (Liskov Substitution Principle, LSP)&#x…...

【Linux】多线程(下)
目录 一、生产者消费者模型 1.1 概念 1.2 基于阻塞队列 1.3 POSIX信号量 初始化信号量 销毁信号量 等待信号量 发布信号量 1.4 基于环形队列和POSIX信号量 二、线程池 2.1 概念 2.2 代码 三、封装Linux线程库 四、单例模式 4.1 概念 4.2 单例模式的实现方式 4…...

Element-Plus如何修改日期选择器输入框el-date-picker的圆角
使用 el-date-picker 的 style 属性 :style"{ --el-border-radius-base: 10px }"<!-- 日期 --> <el-form-item label"日期" prop"establishmentDate"><el-date-picker v-model"form.establishmentDate" type"dat…...

skywalking es查询整理
索引介绍 sw_records-all 这个索引用于存储所有的采样记录,包括但不限于慢SQL查询、Agent分析得到的数据等。这些记录数据包括Traces、Logs、TopN采样语句和告警信息。它们被用于性能分析和故障排查,帮助开发者和运维团队理解服务的行为和性能特点。 …...

故障排除-------K8s挂载集群外NFS异常
故障排除-------K8s挂载集群外NFS异常 1. 故障现象2. 原因梳理2.1 排查思路2.2 确认yaml内容2.3 创建k8s内的nfs测试2.3.1 创建nfs和svc2.3.2 测试创建pvc2.3.3 测试结果 2.4 NFS服务端故障排除2.4.1 网络阻断排除2.4.2 排除服务状态问题2.4.3 排查NFS权限问题 3. 故障排除 1. …...

Easyexcel(6-单元格合并)
相关文章链接 Easyexcel(1-注解使用)Easyexcel(2-文件读取)Easyexcel(3-文件导出)Easyexcel(4-模板文件)Easyexcel(5-自定义列宽)Easyexcel(6-单…...

解决登录Google账号遇到手机上Google账号无法验证的问题
文章目录 场景小插曲解决方案总结 场景 Google账号在新的设备上登录的时候,会要求在手机的Google上进行确认验证,而如果没有安装Google play就可能出现像我一样没有任何弹框,无法实现验证 小插曲 去年,我在笔记本上登录了Googl…...

【Redis_Day5】String类型
【Redis_Day5】String类型 String操作String的命令set和get:设置、获取键值对mset和mget:批量设置、获取键值对setnx/setex/psetexincr和incrby:对字符串进行加操作decr/decrby:对字符串进行减操作incrbyfloat:浮点数加…...

Python MySQL SQLServer操作
Python MySQL SQLServer操作 Python 可以通过 pymysql 连接 MySQL,通过 pymssql 连接 SQL Server。以下是基础操作和代码实战示例: 一、操作 MySQL:使用 pymysql python 操作数据库流程 1. 安装库 pip install pymysql2. 连接 MySQL 示例 …...

Java技术分享
剖析equals方法 1、对于Object来说,其equals()方法底层实现就是"",都是比较对象的引用是否相等,下为JDK源码。 Object c 1; Object d 1; boolean equals c.equals(d);public boolean equals(Object obj) {return (this obj);…...

CentOS7卸载node
CentOS7卸载node 在 CentOS 7 上卸载 Node.js 可以通过以下步骤进行。具体步骤取决于你是如何安装 Node.js 的。常见的安装方法包括使用包管理器(如 yum 或 nvm)和手动安装。 方法 1:使用 yum 卸载 Node.js 如果你是通过 yum安装的 Node.j…...

LeetCode 2257. Count Unguarded Cells in the Grid
🔗 https://leetcode.com/problems/count-unguarded-cells-in-the-grid 题目 给出一个 m x n 的二维表格,格子上有士兵 guard,有墙 wall士兵可以盯上他上下左右所有的格子,碰到墙的格子就停止返回没有被士兵盯到的格子的数量 思…...

即时通讯服务器被ddos攻击了怎么办?
攻击即时通讯系统的主要手段 击键记录 目前盗取即时通讯工具帐号信息的最主要方法是通过特洛伊木马等恶意软件,例如QQ木马,这类程序能够盗取QQ密码信息,常见的能够盗取最新版本QQ密码的木马程序有十几种之多。几乎所有主要的QQ木马程序都采…...

【大数据学习 | Spark-Core】Spark中的join原理
join是两个结果集之间的链接,需要进行数据的匹配。 演示一下join是否存在shuffle。 1. 如果两个rdd没有分区器,分区个数一致 ,会发生shuffle。但分区数量不变。 scala> val arr Array(("zhangsan",300),("lisi",…...

【代码pycharm】动手学深度学习v2-08 线性回归 + 基础优化算法
课程链接 线性回归的从零开始实现 import random import torch from d2l import torch as d2l# 人造数据集 def synthetic_data(w,b,num_examples):Xtorch.normal(0,1,(num_examples,len(w)))ytorch.matmul(X,w)bytorch.normal(0,0.01,y.shape) # 加入噪声return X,y.reshape…...

李宏毅机器学习课程知识点摘要(1-5集)
前5集 过拟合: 参数太多,导致把数据集刻画的太完整。而一旦测试集和数据集的关联不大,那么预测效果还不如模糊一点的模型 所以找的数据集的量以及准确性也会影响 由于线性函数的拟合一般般,所以用一组函数去分段来拟合 sigmoi…...

React(五)——useContecxt/Reducer/useCallback/useRef/React.memo/useMemo
文章目录 项目地址十六、useContecxt十七、useReducer十八、React.memo以及产生的问题18.1组件嵌套的渲染规律18.2 React.memo18.3 引出问题 十九、useCallback和useMemo19.1 useCallback对函数进行缓存19.2 useMemo19.2.1 基本的使用19.2.2 缓存属性数据 19.2.3 对于更新的理解…...

UE5时间轴节点及其设置
在 Unreal Engine 5 (UE5) 中,时间轴节点 (Timeline) 是一个非常有用的工具,可以在蓝图中实现时间驱动的动画和行为。它允许你在给定的时间范围内执行逐帧的动画或数值变化,广泛应用于动态动画、物体移动、颜色变化、材质变换等场景中。 1. …...

git 命令之只提交文件的部分更改
git 命令之只提交文件的部分更改 有时,我们在一个文件中进行了多个更改,但只想提交其中的一部分更改。这时可以使用 使用 git add -p 命令 Git add -p命令允许我们选择并添加文件中的特定更改。它将会显示一个交互式界面,显示出文件中的每个更…...

算法 差分修改 极简
N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a b(a < b),lele便为骑上他的“小飞鸽"牌电动车从气球a开始到气球b依次给每个气球涂一次颜色。但是N次以后lele已经忘记了第I个气球已经涂过几次颜色了,你能帮他算出每个气球被涂过…...