从零开始学习JavaScript:轻松掌握编程语言的核心技能③

news2024/11/20 10:45:28

从零开始学习JavaScript:轻松掌握编程语言的核心技能③

  • 一,JavaScript条件语句
    • 1.1 if...Else 语句
    • 1.2 if...else if...else 语句
    • 1.3 switch 语句
    • 1.4 for 循环
    • 1.5 while 循环
  • 二,JavaScript break 和 continue 语句
    • 2.1 break语句
    • 2.2 continue语句
  • 三,JavaScript typeof, null, 和 undefined
    • 3.1 typeof运算符
    • 3.2 null值
    • 3.3 undefined值
  • 四,JavaScript 类型转换
    • 4.1 隐式类型转换
    • 4.2 显式类型转换
  • 五,JavaScript 正则表达式

🏘️🏘️个人简介:以山河作礼。
🎖️🎖️:Python领域新星创作者,CSDN实力新星认证,阿里云社区专家博主
🎁🎁:Web全栈开发专栏:《Web全栈开发》免费专栏,欢迎阅读!



在这里插入图片描述

一,JavaScript条件语句

1.1 if…Else 语句

📑📑JavaScript中的if…else语句是一种条件语句,用于在满足特定条件时执行不同的代码块
📌if语句的语法如下:

if (condition) {
  // 如果条件为真,执行这里的代码块
}

如果条件为真,代码块中的语句将被执行。如果条件为假,则代码块将被跳过。
在if语句中,可以使用else关键字来指定一个代码块,该代码块将在条件为假时执行。

📌if…else语句的语法如下:

if (condition) {
  // 如果条件为真,执行这里的代码块
} else {
  // 如果条件为假,执行这里的代码块
}

在这种情况下,如果条件为真,则执行if代码块中的语句,否则执行else代码块中的语句。

📌还可以使用else if语句来指定多个条件。语法如下:

if (condition1) {
  // 如果条件1为真,执行这里的代码块
} else if (condition2) {
  // 如果条件2为真,执行这里的代码块
} else {
  // 如果条件1和条件2都为假,执行这里的代码块
}

在这种情况下,如果条件1为真,则执行if代码块中的语句。如果条件1为假且条件2为真,则执行else
if代码块中的语句。如果所有条件都为假,则执行else代码块中的语句。

1.2 if…else if…else 语句

📑📑if…else if…else语句是一种多重条件语句,用于在满足不同条件时执行不同的代码块。它的语法如下:

if (condition1) {
  // 如果条件1为真,执行这里的代码块
} else if (condition2) {
  // 如果条件2为真,执行这里的代码块
} else {
  // 如果所有条件都为假,执行这里的代码块
}

如果条件1为真,那么if代码块中的语句将被执行;如果条件1为假且条件2为真,那么else
if代码块中的语句将被执行;如果所有条件都为假,那么else代码块中的语句将被执行。

📌可以使用多个else if语句来指定多个条件。例如:

if (condition1) {
  // 如果条件1为真,执行这里的代码块
} else if (condition2) {
  // 如果条件2为真,执行这里的代码块
} else if (condition3) {
  // 如果条件3为真,执行这里的代码块
} else {
  // 如果所有条件都为假,执行这里的代码块
}

如果条件1为真,那么if代码块中的语句将被执行;如果条件1为假且条件2为真,那么else
if代码块中的语句将被执行;如果条件1和条件2都为假且条件3为真,那么第二个else
if代码块中的语句将被执行;如果所有条件都为假,那么else代码块中的语句将被执行。

if…else if…else语句中的条件是按顺序执行的。也就是说,只要某个条件为真,那么它后面的所有条件都不会被执行。因此,在使用if…else if…else语句时,应该根据实际情况,将最有可能成立的条件放在前面。

1.3 switch 语句

📑📑JavaScript中的switch语句是一种多重条件语句,用于在满足不同条件时执行不同的代码块。
它的语法如下:

switch (expression) {
  case value1:
    // 如果 expression 的值等于 value1,执行这里的代码块
    break;
  case value2:
    // 如果 expression 的值等于 value2,执行这里的代码块
    break;
  ...
  default:
    // 如果 expression 的值都不等于前面的值,执行这里的代码块
    break;
}

在这个语法中,expression是一个表达式,通常是一个变量或一个函数的返回值。每个case语句后面跟着一个值,如果expression的值等于这个值,那么对应的代码块将被执行。如果没有一个case语句的值与expression的值相等,那么执行default语句块。
需要注意的是,每个case语句后面必须加上break关键字,否则程序会继续执行下一个case语句的代码块。如果省略break关键字,会导致程序执行出现错误。
下面是一个使用switch语句的例子:

var fruit = "apple";
switch (fruit) {
  case "banana":
    console.log("这是香蕉");
    break;
  case "apple":
    console.log("这是苹果");
    break;
  case "orange":
    console.log("这是橙子");
    break;
  default:
    console.log("这不是香蕉、苹果或橙子");
    break;
}

在这个例子中,expression的值是变量fruit的值,根据不同的值,执行对应的代码块。如果fruit的值是"apple",那么执行第二个case语句中的代码块,输出"这是苹果"。

1.4 for 循环

📑📑JavaScript中的for循环是一种重复执行代码块的语句,用于循环遍历数组或执行指定次数的操作。

它的语法如下:

for (initialization; condition; increment) {
  // 在这里执行循环体代码块
}

在这个语法中,initialization是一个表达式,用于初始化循环计数器。condition是一个表达式,用于指定循环的终止条件。increment是一个表达式,用于在每次循环迭代之后更新循环计数器。

📌for循环的执行过程如下:

  1. 执行initialization表达式,初始化循环计数器。
  2. 检查condition表达式的值,如果为true,则执行循环体代码块。
  3. 执行increment表达式,更新循环计数器。
  4. 重复第2步和第3步,直到condition表达式的值为false。

📌下面是一个使用for循环的例子:

for (var i = 0; i < 5; i++) {
  console.log(i);
}

在这个例子中,循环计数器i的初始值为0,循环的终止条件是i小于5,每次循环后i的值会自增1。因此,这个for循环会输出0、1、2、3、4。
需要注意的是,循环计数器的初始值、循环的终止条件和每次循环后的更新操作都可以是任何有效的JavaScript表达式。例如,循环计数器的初始值可以是一个函数的返回值,循环的终止条件可以是一个变量的值,每次循环后的更新操作可以是一个复杂的表达式。

1.5 while 循环

📑📑JavaScript中的while循环是一种重复执行代码块的语句,与for循环不同,它不需要指定循环计数器。

它的语法如下:

while (condition) {
  // 在这里执行循环体代码块
}

在这个语法中,condition是一个表达式,用于指定循环的终止条件。

📌while循环的执行过程如下:

  1. 检查condition表达式的值,如果为true,则执行循环体代码块。
  2. 重复第1步,直到condition表达式的值为false。

📌下面是一个使用while循环的例子:

var i = 0;
while (i < 5) {
  console.log(i);
  i++;
}

在这个例子中,循环的终止条件是i小于5,每次循环后i的值会自增1。因此,这个while循环会输出0、1、2、3、4。
需要注意的是,如果循环的终止条件始终为true,那么这个循环将永远不会结束,这种情况被称为“死循环”,应该避免出现。

二,JavaScript break 和 continue 语句

📑📑JavaScript中的break和continue语句是控制循环执行的语句。

2.1 break语句

break语句用于立即终止循环,并跳出循环体
它的语法如下:

break;

📌在for循环和while循环中,break语句通常与if语句结合使用,用于在满足特定条件时终止循环。
例如:

for (var i = 0; i < 10; i++) {
  if (i === 5) {
    break;
  }
  console.log(i);
}

在这个例子中,当i等于5时,break语句会立即终止循环,并跳出循环体。

2.2 continue语句

📌continue语句用于跳过当前循环迭代,直接进入下一次迭代。
它的语法如下:

continue;

📌在for循环和while循环中,continue语句通常与if语句结合使用,用于在满足特定条件时跳过当前循环迭代。
例如:

for (var i = 0; i < 10; i++) {
  if (i === 5) {
    continue;
  }
  console.log(i);
}

在这个例子中,当i等于5时,continue语句会跳过当前循环迭代,直接进入下一次迭代。

三,JavaScript typeof, null, 和 undefined

3.1 typeof运算符

📑📑typeof运算符用于返回操作数的数据类型,它的语法如下:

typeof operand

其中operand是一个JavaScript表达式。typeof运算符返回一个字符串,表示operand的数据类型。

📌常见的数据类型有:

  • “undefined” - 表示未定义的值。
  • “boolean” - 表示布尔值。
  • “number” - 表示数字。
  • “string” - 表示字符串。
  • “object” - 表示对象或null。
  • “function” - 表示函数。

3.2 null值

📑📑null是一个表示空值的JavaScript关键字。它表示一个空对象指针,表示不存在任何对象。
例如:

var obj = null;

在这个例子中,变量obj被赋值为null,表示该变量不指向任何对象。

3.3 undefined值

📌undefined是一个表示未定义值的JavaScript全局变量。它表示一个未初始化的变量或属性,或者函数没有返回值。
例如:
var x;
console.log(typeof x); // 输出 “undefined”

在这个例子中,变量x未被初始化,因此它的值为undefined。

四,JavaScript 类型转换

📑📑JavaScript中有两种类型转换:隐式类型转换和显式类型转换。

4.1 隐式类型转换

📌隐式类型转换是指在运行时自动进行的类型转换,通常发生在不同类型之间的操作或比较时。
例如:

// 字符串和数字相加,会将数字转换为字符串
var result = "3" + 4; // result 的值为 "34"

// 布尔值和数字相加,会将布尔值转换为数字
var result = true + 4; // result 的值为 5

// 字符串和布尔值相加,会将布尔值转换为字符串
var result = "hello" + false; // result 的值为 "hellofalse"

在这些例子中,JavaScript会自动将不同类型的值转换为相应的类型,以便进行操作或比较。

4.2 显式类型转换

📌显式类型转换是指通过一些内置函数或语句,将一个类型转换为另一个类型。
常见的显式类型转换函数有:

  • Number() - 将一个值转换为数字。
  • String() - 将一个值转换为字符串。
  • Boolean() - 将一个值转换为布尔值。

例如:

// 将字符串转换为数字
var num = Number("123");

// 将数字转换为字符串
var str = String(123);

// 将值转换JavaScript中的类型转换是指将一个数据类型转换为另一个数据类型。

📌以下是一些常见的类型转换:

  1. 字符串转换:使用String()函数或者将变量用双引号包裹起来即可将其转换为字符串类型。

  2. 数字转换:使用Number()函数或者使用+号将字符串转换为数字类型。

  3. 布尔转换:使用Boolean()函数或者使用双叹号!!将值转换为布尔类型。

  4. 对象转换:使用Object()函数可以将基本类型转换为对象类型。

  5. 数组转换:使用Array()函数可以将其他类型的数据转换为数组类型。

五,JavaScript 正则表达式

📑📑正则表达式是一种用来匹配字符串的模式,通过使用特定的语法规则,可以匹配字符串中的特定字符、单词或模式。

  • 创建正则表达式

在JavaScript中,可以使用RegExp对象来创建正则表达式。
正则表达式的语法由两个斜杠之间的字符组成,例如:

// 匹配字符串中的所有数字
var pattern = /\d/g;

在这个例子中,正则表达式/\d/g用来匹配字符串中的所有数字。其中/是正则表达式的开始和结束符号,\d表示匹配任意一个数字,g表示全局匹配。

  • 正则表达式方法

📌在JavaScript中,可以使用正则表达式的方法来进行匹配、替换和搜索等操作。

常见的正则表达式方法有:

  • test() - 测试一个字符串是否匹配正则表达式。
  • exec() - 在一个字符串中执行正则表达式匹配,并返回匹配结果。
  • match() - 在一个字符串中查找匹配正则表达式的子串,并返回一个数组。
  • replace() - 在一个字符串中查找匹配正则表达式的子串,并用新的字符串替换它们。
  • search() - 在一个字符串中查找匹配正则表达式的子串,并返回它的位置。

例如:

// 匹配字符串中的所有数字
var pattern = /\d/g;
var str = "abc123def456";

// 使用test()方法测试字符串是否匹配正则表达式
var result = pattern.test(str); // 返回 true
// 使用exec()方法执行正则表达式匹配
var match = pattern.exec(str); // 返回 ["1"]
// 使用match()方法查找匹配正则表达式的子串
var matches = str.match(pattern); // 返回 ["1", "2", "3",JavaScript 的正则表达式是一种强大的工具,用于在字符串中搜索和替换文本。它们由一个模式和一些可选标志组成,模式由一些字符和元字符组成,用于描述要匹配的文本。

📌下面是一些常用的元字符:

.:匹配除了换行符以外的任意字符。
^:匹配字符串的开头。
$:匹配字符串的结尾。
*:匹配前面的字符或子表达式零次或多次。
+:匹配前面的字符或子表达式一次或多次。
?:匹配前面的字符或子表达式零次或一次。
[]:匹配中括号内的任意一个字符。
():标记一个子表达式的开始和结束位置。
|:指明两项之间的一个选择。

📌下面是一些常用的正则表达式示例:

/hello/:匹配字符串中的 "hello"/[aeiou]/:匹配字符串中的任何一个元音字母。
/^\d/:匹配字符串中的开头是数字的字符串。
/\.com$/:匹配以 ".com" 结尾的字符串。
/a+/:匹配一个或多个 "a"/a{2,4}/:匹配两个到四个 "a"/(\d{3})-(\d{4})/:匹配电话号码格式,如 "123-4567"

JavaScript 中使用正则表达式的方法包括 test()、exec()、match()、replace()、search() 等。

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

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

相关文章

支付系统设计四:支付核心设计03-快捷短信确认(失败转代扣)

文章目录 前言一、快捷支付1. 执行流程1.1 发送短信1.1.1 发送短信(正常情况)1.1.2 发送短信(异常情况) 1.2 短信确认1.2.1 短信确认(正常情况)1.2.2 短信确认(异常情况) 2. 短信确认流程分析2.1 Service层执行2.2 快捷支付确认2.2.1 快捷支付确认命令链2.2.2 流程分析2.2.3 详…

Nacos 详解

Nacos是阿里的一个开源产品&#xff0c;是针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。 1.1 什么是配置 应用程序在启动和运行的时候往往需要读取一些配置信息&#xff0c;配置基本上伴随着应用程序的整个生命周期&#xff0c;比如&#xff1a;数 据库…

istio证书异常

istio有时会出现证书异常的问题&#xff0c;例如证书校验失败&#xff0c;证书过期等&#xff0c;此时需要我们手动处理istio证书问题。 一、我的istio版本 client version: 1.3.3 control plane version: 1.3.3二、开始处理 1、先查询istio的密钥istio-ca-secret&#xff1a…

飞桨 GPU 训练

飞桨官网介绍使用流程 paddle —— 飞桨的深度学习核心框架本地 padddlepaddle 的安装和卸载安装查看当前安装的版本卸载 启动 GPU 训练指定 GPU 飞桨创建项目PaddlePaddle 2.1.2 下的对比修改为 paddlepaddle2.4.0 CUDA 飞桨 飞桨官网&#xff1a;https://www.paddlepaddle.o…

编程最重要的技术之一 — 调试(以C语言代码为例)

编程最重要的技术之一 — 调试&#xff08;以C语言代码为例&#xff09; 前言1. 什么是bug?2. 调试是什么&#xff1f;有多重要&#xff1f;2.1 调试是什么&#xff1f;2.2 调试的基本步骤2.3 Debug和Release的介绍 3. Windows环境调试介绍3.1 调试环境准备3.2 学会快捷键3.3 …

Unity - 记录解决 部分手机设备上 浮点精度 不足 导致 UV 采样断层严重的 BUG

文章目录 环境目的问题解决Project 环境 Unity : 2020.3.37f1 Pipeline : BRP 目的 备忘&#xff0c;便于日后索引 问题 正常手机显卡芯片的浮点解析进度上的效果&#xff08;其实不用手机上&#xff0c;PC 上将 uv * scale 一个巨大的值也会出现的&#xff09; 异常手机显…

MySql Order by 字段出现重复导致 limit 分页后的数据错乱

问题描述 select * from standard_process order by event_time desc 此条sql查询的结果如下&#xff1a; 共有28条数据&#xff0c;确实是按照event_time排序的。 但是加了limit以后就出现问题了&#xff0c;原本以为是截取的前10条&#xff0c;结果出现了数据错乱的情况。 …

安装VTK8.2.0-win 实际操作

Windows下安装VTK8.2.0 1、依赖 VS2017 Qt5 cmake 2、前期准备 2.1、访问vtk官方下载VTK8.2.0源码 VTK源码下载地址&#xff1a;https://vtk.org/download/ 2.2、配置环境变量 配置CMAKE_PREFIX_PATH&#xff0c;值为Qt的bin路径 2.3、新建2个文件夹一个用于存放cmake编…

Fourier分析入门——第14章——Fourier光学

目录 第14章 Fourier光学 14.1 引言 14.2 物理光学和图像形成(Physical optics and images formation) 14.3 Fourier光学域(The Fourier optics domain) 14.4 图像形成的线性系统描述(Linear Systems Description of Image Formation) 第14章 Fourier光学 14.1 引言 Four…

操作系统-进程和线程-进程和线程

目录 一、进程的概念、组成、特征 二、进程的状态与转换、组织 2.1进程状态 2.2进程转换关系 2.3进程的组织 链接方式 索引方式 三、进程控制 3.1进程的创建 3.2进程的终止 3.3进程的阻塞和唤醒 3.4进程的切换 ​编辑 四、进程通信 4.1共享存储 4.2消息传递 直接通信…

C++算法刷题--2023/6/2

源代码&#xff08;C&#xff09;&#xff1a; #include<iostream> using namespace std; struct Road{char way[100]{}; }; int main(){int t;cin>>t;struct Road *p new Road[t];int right0,left0;for(int i0;i<t;i){cin>>p[i].way;} for(int i0;i&…

力扣刷题【第一期】

文章目录 1.爬楼梯2.求两数的和&#xff08;283&#xff09;3.移动零&#xff08;283&#xff09;3.1 题目描述3.2 算法描述3.3具体实现 4.合并有序连表&#xff08;21&#xff09;4.1 题目描述4.2 算法思想4.3 代码实现 5.删除连表中重复的值&#xff08;83&#xff09;5.1 题…

CodeEditor之sublimetext:sublimetext的简介、安装、使用方法之详细攻略

CodeEditor之sublimetext&#xff1a;sublimetext的简介、安装、使用方法之详细攻略 目录 sublimetext的简介 sublimetext的安装 1、安装教程如下所示 sublimetext的使用方法 sublimetext的简介 Sublime Text 是一个文本编辑器&#xff08;收费软件&#xff0c;可以无限期试…

javascript基础十五:说说new操作符具体都干了什么?

一、是什么 在JavaScript中&#xff0c;new操作符用于创建一个给定构造函数的实例对象 举个粟子 function Parent (name,age){this.name name;this.age age; } undefined Parent.prototype.sayName function(){console.log(this.name) } ƒ (){console.log(this.name) } c…

佛朗斯冲击港交所IPO:叉车租赁的未来是数字化?

佛朗斯“三战”IPO。 图源&#xff1a;佛朗斯 近日&#xff0c;广州佛朗斯股份有限公司&#xff08;下文简称为“佛朗斯”&#xff09;正式向港交所递交招股书&#xff0c;拟于港交所主板挂牌上市。 值得注意的是&#xff0c;这并不是佛朗斯首次冲击IPO。2019年6月和2020年7月…

操作系统-计算机系统概述-特性发展分类分层结构

目录 一、定义 1.1特征 二、操作系统的分类和发展 2.1手工操作阶段 2.2批处理阶段 2.2.1单道批处理系统 2.2.2多道批处理系统 2.3分时操作系统 2.4实时操作系统 2.5 网络操作系统 2.6分布式操作系统 2.7 个人计算机操作系统 三、操作系统的运行与机制 内核态和用…

【Python】函数 ⑤ ( 函数说明文档 | 函数说明文档内容建议 | 代码示例 )

文章目录 一、函数说明文档1、函数说明文档简介2、函数说明文档内容建议2、代码示例 - 函数说明文档 一、函数说明文档 1、函数说明文档简介 函数说明文档 就是 通过 注释 对 函数的作用进行解释说明 ; 函数说明文档 用法 : 在 函数定义 后 , 函数体的第一行位置 , 输入六个双…

Linux:Linux基础网络设置

ifconfig ifconfig #查看网卡信息 inet---网络接口的ip地址 netmask---子网掩码 broadcast---广播地址 ether----物理地址&#xff08;mac地址&#xff09; hostname hostname #查看主机名 hostnamectl set-hostname 自定义主机名 route route # 查看网卡网关 destination-…

华为OD机试真题B卷 Java 实现【检查是否存在满足条件的数字组合】,附详细解题思路

一、题目描述 给定一个正整数数组&#xff0c;检查数组中是否存在满足规则的数字组合 规则&#xff1a;A B 2C 二、输入描述 第一行输出数组的元素个数。 接下来一行输出所有数组元素&#xff0c;用空格隔开。 三、输出描述 如果存在满足要求的数&#xff0c;在同一行…

Ubuntu使用ssh连接两个主机

前提&#xff1a;两者连接同一个WiFi&#xff08;局域网&#xff09; ssh安装&#xff1a; sudo apt-get install openssh-client sudo apt-get install openssh-server 首先在两个主机分别终端输入&#xff1a;ifconfig 查询两者的ip 用户名是前面的那个&#xff1a; …