【Java Web学习 | 第八篇】JavaScript(2) 基础知识2

【Java Web学习 | 第八篇】JavaScript(2) 基础知识2

🌈个人主页: Hygge_Code🔥热门专栏:从0开始学习Java | Linux学习| 计算机网络💫个人格言: “既然选择了远方,便不顾风雨兼程”

在这里插入图片描述

文章目录

JavaScript 运算符与流程控制全解析

在 JavaScript 中,运算符和流程控制是实现逻辑处理的基础。本文在前文基础上补充for循环内容,全面讲解比较运算符、逻辑运算符、条件判断语句(if、switch)及循环语句(while、for),帮助你掌握 JavaScript 的逻辑构建能力。

一、运算符:自增、比较与逻辑🥝

1. 自增运算符(++)

自增运算符分为前缀(++i)和后缀(i++),核心区别在于返回值时机:

  • 后缀自增(i++):先返回当前值,再自增
  • 前缀自增(++i):先自增,再返回新值
let i =1; console.log(i+++++i + i);// 结果为7// 解析:// 1. i++ 先返回1,i变为2// 2. ++i 先自增为3,返回3// 3. 此时i=3,总和:1+3+3=7

2. 比较运算符

用于判断值的关系,返回布尔值,需重点区分=====

运算符特点示例结果
==只比较值(隐式转换类型)2 == "2"true(字符串转数字)
===比较值和类型(无转换)2 === "2"false(类型不同)
!=只比较值不相等2 != "2"false(值相等)
!==比较值或类型不相等2 !== "2"true(类型不同)

特殊规则

  • 字符串按字符编码比较(如"a" < "b"true
  • NaN与任何值比较都返回false(包括自身)
console.log(2=="2");// true(隐式转换) console.log(2==="2");// false(类型不同) console.log("aabgg"<"bzzzz");// true(首字符"a"<"b")

3. 逻辑运算符

组合多个条件判断,返回布尔值:

运算符描述示例结果
&&逻辑与(两边都真才真)3<5 && 3<9true
两条竖线(打不出来)逻辑或(至少一边真则真)3<5 两条竖线 3>100true
!逻辑非(取反)!(2>5)true

真值/假值规则

  • 假值:0""nullundefinedNaN
  • 真值:除假值外的所有值(如非空字符串、非0数字)
console.log(!9);// false(9是真值) console.log(!"");// true(空字符串是假值)

二、条件判断语句🥝

1. if 语句

根据条件执行代码块,条件会隐式转换为布尔值:

// 语法if(条件){// 条件为真时执行}else{// 条件为假时执行}// 示例:判断空格字符串是否为真if(" "){// 空格字符串是真值(非空) console.log(true);// 输出:true}else{ console.log(false);}

2. 三目运算符

if-else的简写形式:条件 ? 表达式1 : 表达式2

// 判断2与"2"是否绝对相等 document.write(2==="2"?"相等":"不等");// 输出:不等

3. switch 语句

用于多条件等值判断(使用===比较),需配合break防止穿透:

let num5 =3;switch(num5){case1: console.log("选了1");break;case2: console.log("选了2");break;case3: console.log("选了3");// 匹配成功,输出此句break;default: console.log("无匹配项");}// 输出:选了3

三、循环语句🥝

1. while 循环

根据条件重复执行代码块,continue可跳过本次循环:

let n =5;while(n--){// n从5递减到0if(n ===3)continue;// 跳过n=3的循环 document.write(`执行第${n}次<br/>`);}// 输出:// 执行第4次// 执行第2次// 执行第1次// 执行第0次

2. for 循环

更灵活的循环方式,适合已知循环次数的场景,语法:

for(初始化; 条件; 更新){// 循环体}

示例:基本用法

// 输出1-5for(let i =1; i <=5; i++){ console.log(i);// 依次输出1、2、3、4、5}

总结🍂

本文全面讲解了 JavaScript 核心运算符和流程控制:

  • 自增运算符的前缀/后缀差异影响返回值
  • 比较运算符中=====更严格(检查类型)
  • 逻辑运算符依赖真值/假值转换
  • 条件判断:if适合区间判断,switch适合等值判断
  • 循环:while适合未知次数,for适合已知次数,灵活使用continuebreak

如果我的内容对你有帮助,请 点赞 , 评论 , 收藏 。创作不易,大家的支持就是我坚持下去的动力!

在这里插入图片描述

Read more

WebPShop插件完整指南:让Photoshop完美支持WebP图像格式

WebPShop插件完整指南:让Photoshop完美支持WebP图像格式 【免费下载链接】WebPShopPhotoshop plug-in for opening and saving WebP images 项目地址: https://gitcode.com/gh_mirrors/we/WebPShop 作为现代图像格式的领军者,WebP以其卓越的压缩效率和动画支持能力,正在逐步改变数字图像的处理方式。然而,专业设计师在使用Photoshop时常常面临一个尴尬的现实:原生不支持WebP格式。WebPShop插件应运而生,为Photoshop用户提供了完整的WebP格式解决方案。 🤔 为什么需要WebPShop插件? 痛点问题分析 * Photoshop原生无法打开.webp文件,导致工作流程中断 * 无法直接保存为WebP格式,必须依赖第三方转换工具 * 缺乏专业的压缩参数控制,无法优化图像质量与文件大小 * 动态WebP动画处理能力缺失,影响创意表达 解决方案概述 WebPShop插件通过开源方式,为Photoshop添加了完整的WebP格式支持。无论是

Mac上运行DeepSeek-OCR的完整方案|基于DeepSeek-OCR-WEBUI镜像轻松部署

Mac上运行DeepSeek-OCR的完整方案|基于DeepSeek-OCR-WEBUI镜像轻松部署 你是不是也遇到过这种情况:看到 DeepSeek-OCR 这个强大的开源OCR模型火了,想在自己的Mac上试试,结果发现官方只提供了基于CUDA和Linux的推理脚本?一通折腾后才发现根本跑不起来。别急,这不是你的问题,而是当前很多大模型默认“为NVIDIA显卡而生”的现实写照。 但好消息是——现在你完全可以在Mac上本地运行 DeepSeek-OCR,而且不需要懂太多技术细节。本文将带你通过 DeepSeek-OCR-WEBUI 镜像,实现一键部署、开箱即用的OCR体验。无论你是M1/M2/M3芯片的Apple Silicon用户,还是Intel处理器的老款Mac,都能顺利运行。 整个过程只需三步:拉取镜像 → 启动服务 → 浏览器访问。无需手动配置环境、不用修改代码、不碰命令行难题。尤其适合希望快速验证效果、保护数据隐私、或用于文档数字化、票据识别等实际场景的用户。 1. 为什么要在Mac上运行DeepSeek-OCR? 1.1 OCR的实际价值不容忽视 光学字符识别

Java计算机毕设之基于springboot的智能推荐高考志愿辅助填报系统基于web的高考志愿填报系统的设计与实现基于Java + vue高考志愿填报系统(完整前后端代码+说明文档+LW,调试定制等)

Java计算机毕设之基于springboot的智能推荐高考志愿辅助填报系统基于web的高考志愿填报系统的设计与实现基于Java + vue高考志愿填报系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围::小程序、SpringBoot、SSM、JSP、Vue、PHP、Java、python、爬虫、数据可视化、大数据、物联网、机器学习等设计与开发。 主要内容:免费开题报告、任务书、全bao定制+中期检查PPT、代码编写、🚢文编写和辅导、🚢文降重、长期答辩答疑辅导、一对一专业代码讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路。 特色服务内容:答辩必过班 (全程一对一技术交流,帮助大家顺利完成答辩,小白必选) 全网粉丝50W+,累计帮助2000+完成优秀毕设 🍅文末获取源码🍅 感兴趣的可以先收藏起来,还有大家在毕设选题,

实战指南:利用jsEncrypter插件突破前端加密测试瓶颈

1. 为什么前端加密会成为测试的“拦路虎”? 如果你做过Web安全测试,尤其是登录、注册、支付这类涉及敏感数据交互的功能点,那你一定遇到过这种情况:用BurpSuite抓到的请求包,里面的密码、验证码、身份证号等关键字段,是一长串完全看不懂的乱码。你精心准备的测试用例,比如尝试输入admin' or '1'='1,结果到了服务器端,收到的却是类似aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789+/==这样的密文。这还怎么测?SQL注入、XSS、越权这些攻击手法,在密文面前全都失效了。 这就是前端加密给我们测试人员带来的核心挑战。它的初衷是好的,为了保护数据在传输过程中的安全,防止被中间人窃听。但对于安全测试而言,它就像给测试目标穿上了一层“加密盔甲”,我们的“测试矛”直接戳上去,毫无反应。传统的手工测试和自动化脚本,在加密字段面前都束手无策。你总不能每次都去猜加密算法和密钥吧?那效率太低了。 我刚开始遇到这个问题时也很头疼,尝试过各种笨办法。比如,手动在浏览器控制台里执行加密函数,把测试载荷加密后再粘贴到BurpSuite里重放。