Java阶段三Day03
Java阶段三Day03
文章目录
- Java阶段三Day03
- JavaScript语言
- JavaScript概述
- 什么是JavaScript
- 语言特点
- 一门编程语言包括哪些内容
- 语言基础
- 变量
- JavaScript常用数据类型
- 运算符
- 各种语句
- 如何在HTML页面中引入JavaScript代码
- 方法
- 和页面相关的方法
- BOM和DOM
- 什么是BOM
- window对象
- location对象
- history对象
- 什么是DOM
- 前端MVC设计模式
- 前端MVVM设计模式
JavaScript语言
JavaScript概述
注意:Java是Java,JS是JS
什么是JavaScript
- JavaScript(简称“JS”)由Netscape公司在1995年首次推出,最初被称为 Mocha,然后改名为 LiveScript,最终被命名为 JavaScript。目前已经成为最受欢迎的编程语言之一。
- JavaScript通常用于Web页面中,通过HTML和CSS来实现交互效果和动态内容。
- JavaScript和Java虽然名称相似,但实际上是两种完全不同的编程语言。
- 作用: 负责给页面添加动态效果
语言特点
- 动态类型:JavaScript是一种弱类型的语言,不需要指定变量类型,变量的类型在运行时根据值自动推断。
- 解释性:JavaScript是一种解释型语言,不需要编译就可以直接在浏览器中运行。
- 基于对象:JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
一门编程语言包括哪些内容
- 变量
- 数据类型
- 运算符
- 各种语句
- 方法
- 面向对象
语言基础
变量
- JavaScript语言属于弱类型语言,声明变量不需要指定类型
- JavaScript语言中通过
let或var声明变量let声明的变量,作用域和Java语言类似,块级作用域(推荐使用)var声明的变量,全局作用域
JavaScript常用数据类型
-
基本数据类型
- 字符串(String)、数字(Number)、布尔(Boolean)、未定义(Undefined)
-
引用类型
- 对象(Object)、数组(Array)、函数(Function)
获取变量类型的方式: typeof 变量名;
运算符
-
算术运算符:+ 、 - 、 * 、/ 、 %
-
除法运算会自动根据结果转换整数或小数
- java:int x = 5; int y=2; int z = x/y; z=2
- js:let x = 5; let y=2; let z = x/y; z=2.5 x=6 z=3
-
-
关系运算符:> 、< 、>= 、<= 、!= 、== 、===
==:先统一等号两边变量的类型,再比较值 “666”==666 true===:先比较类型,类型相同后再比较值 “666”===666 false
-
逻辑运算符:&& 、|| 、! 只支持短路与 和 短路或
-
赋值运算符:= 、+= 、-= 、*= 、/= 、%=
-
三目运算符:条件?值1:值2
各种语句
- 分支语句:if 和 else
- for 新循环:for(Person p : persons) JS: for(let p of persons)
- while
- switch case
如何在HTML页面中引入JavaScript代码
引入方式:
-
内联:在标签的事件属性中添加JS代码,当事件触发时执行
- 事件:指系统提供的一系列时间点 .
- 点击事件:当用户点击元素的时间点.
-
内部:在页面的任意位置可以添加
script标签,在标签体内写js代码, 建议写在body结束标签的附近 -
外部:在单独的
js文件中写js代码, 在html页面中通过script标签的src属性引入, 如果script标签引入了js文件则不能在标签体内继续写js代码
方法
-
Java语言的方法和JavaScript的方法对比:
- Java:public 返回值 方法名(参数列表){方法体}
- JS:function 方法名(参数列表){方法体}
-
三种定义方法的方式:
- function 方法名(参数列表){方法体}
- let 方法名 = function(参数列表){方法体}
- let 方法名 = new Function(“参数1”,“参数2”,“方法体”);
和页面相关的方法
-
通过选择器获取页面中的元素对象
- let 元素对象 = document.querySelector(“选择器”);
-
获取和修改控件的值
- input.value 获取
- input.value=“xxx” 修改
-
获取和修改元素的文本内容 例:
文本内容- 变量.innerText 获取
- 变量.innerText = “xxx ” 修改
BOM和DOM
什么是BOM
BOM(Browser Object Model)是指浏览器对象模型,它是JavaScript 与浏览器之间进行交互的接口。BOM 提供了一组对象,这些对象代表着浏览器相关内容,并提供了访问和控制这些对象的方法。
以下是一些常见的 BOM 对象:
windowlocationhistory
window对象
window对象是JavaScript中表示当前浏览器窗口的内置全局对象。它包含了浏览器窗口的所有属性和方法,可以通过该对象来访问和控制当前窗口的各种行为。
常用方法:
| 方法 | 介绍 |
|---|---|
| isNaN(变量) | 判断变量是否是NaN |
| parseInt() | 将字符串或小数转成整数 |
| parseFloat() | 将字符串转成小数 |
| alert(“xxx”) | 弹出提示框 |
| confirm(“xxx”) | 弹出确认框 |
| prompt(“xxx”) | 弹出文本框 |
location对象
常用方法:
| 方法 | 介绍 |
|---|---|
| location.href | 获取或修改浏览器的请求地址 |
| location.reload() | 刷新页面 |
history对象
常用方法:
| 方法 | 介绍 |
|---|---|
| history.length | 历史页面的数量 |
| history.back() | 返回上一页面 后退 |
| hisotry.forward() | 前往下一页面 前进 |
| history.go(n) | n正值代表前进 n负值代表后退 0代表刷新 |
什么是DOM
Document Object Model 文档对象模型, 包含和页面相关的内容
-
通过选择器获取页面中的元素对象
- let 元素对象 = document.querySelector(“选择器”);
-
获取和修改控件的值 元素对象.value
-
获取和修改元素的文本内容 元素对象.innerText
-
创建元素对象
- let d = document.createElement(“div”);
-
添加元素到某个元素里面
- 元素对象.append(新元素);
前端MVC设计模式
MVC设计模式就是将实现前端业务的所有代码划分为三部分
- M:model 模型 , 对应数据相关代码
- V:View 视图, 对应的是页面标签相关
- C:Controller 控制器, 对应的是将数据显示到页面中的过程代码
前端MVC设计模式存在弊端:在Controller控制器部分,需要频繁的进行DOM相关操作(遍历查找元素),比较浪费资源 , MVVM设计模式可以解决此问题
前端MVVM设计模式
MVVM设计模式也是将实现前端业务的所有代码划分为三部分
- M:model 模型 , 对应数据相关代码
- V:View 视图, 对应的是页面标签相关
- VM:视图模型, 视图模型负责将页面中可能发生改变的元素和某个变量在内存中进行绑定, 并对变量进行监听,当变量发生改变时,会从内存中找到和变量所对应的元素, 让元素进行改动,这样就不用像MVC设计模式中通过遍历查找的方式查找元素了,从而提高执行的效率。
相关文章:
Java阶段三Day03
Java阶段三Day03 文章目录 Java阶段三Day03JavaScript语言JavaScript概述什么是JavaScript语言特点一门编程语言包括哪些内容 语言基础变量JavaScript常用数据类型运算符各种语句如何在HTML页面中引入JavaScript代码方法和页面相关的方法 BOM和DOM什么是BOMwindow对象location对…...
【STM32G431RBTx】备战蓝桥杯嵌入式→决赛试题→第七届
文章目录 前言一、题目二、模块初始化三、代码实现interrupt.h:interrupt.h:main.h:main.h: 四、完成效果五、总结 前言 无 一、题目 二、模块初始化 1.LCD这里不用配置,直接使用提供的资源包就行 2.ADC:开启ADCsingle-ended 3.LED:开启PC8-15,PD2输出模式就行了…...
Java日期时间调整的几种方式
一、Calendar类 我们现在已经能够格式化并创建一个日期对象了,但是我们如何才能设置和获取日期数据的特定部分呢,比如说小时,日,或者分钟? 我们又如何在日期的这些部分加上或者减去值呢? 答案是使用Calendar 类。 Calendar类的…...
如何在Windows 11更新后解决C盘已满的问题?
Windows 11比Windows 10需要占用C盘更多的空间,在升级到Windows 11后,如果升级后出现问题,安装程序可以帮你退回到Windows 10。无论怎样,在升级到Windows 11后,系统会自动制作以前的数据的副本,这会占用大量…...
DJ6-1/2/3 文件系统
目录 6.1 文件系统概述 6.1.1 文件、记录和数据项 6.1.2 文件类型 6.1.3 文件系统模型 6.1.4 对文件的操作 6.2 文件的逻辑结构 6.2.1 文件逻辑结构的类型 6.2.2 顺序文件(Sequential File) 6.2.4 索引文件(Index File&…...
华为OD机试真题 Java 实现【打印文件】【2023Q1 100分】
一、题目描述 有 5 台打印机打印文件,每台打印机有自己的待打印队列。 因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10不同的优先级,其中数字越大优先级越高。 打印机会从自己的待打印队列中选择优先级最高的文件来打印。 如果存在两个优先级一样的文件,则选…...
基于LSB实现文本、图片、压缩包的隐藏
关于LSB的相关介绍: LSB全称为 Least Significant Bit(最低有效位),是一种基于图片最低有效位修改储存信息的隐写方法,在CTF杂项中经常会遇到,LSB属于空域算法中的一种,是将信息嵌入到图像点中…...
(万字长文)Linux——IO之重定向+缓冲区 +重定向 +缓冲区原理实现 +带重定向的简易版shell+标准输出标准错误
索引 文件描述符分配规则重定向 缓冲区1.什么是缓冲区2.缓冲区在哪里 重定向源码模拟实现缓冲区原理带重定向的简易版Xshell标准输入和标准错误 文件描述符分配规则 文件描述符的分配规则 从头遍历数组fd_array[],找到一个最小的,没有被使用的下标,分配…...
面试:js 延迟加载方式
相关知识点: js 延迟加载,也就是等页面加载完成之后再加载 JavaScript 文件。 js 延迟加载有助于提高页面加载速度 一般有以下几种方式: defer 属性 async 属性 动态创建 DOM 方式 使用 setTimeout 延迟方法 让 JS 最后加载 js 的加载…...
将Oracle数据文件导入SQL Server的方法
审计过程中,采集的业务数据有Oracle备份数据,备份文件的后缀名为.dmp。如何将*.dmp文件导入审计人员熟悉的SQL Server中呢?以下是现场审计数据导入方法介绍。 一、将*.dmp文件导入oracle数据库 *.dmp文件为Oracle数据库备份文件,因…...
《汇编语言》- 读书笔记 - 实验5 编写、调试具有多个段的程序
《汇编语言》- 读书笔记 - 实验5 编写、调试具有多个段的程序 题目1题目2题目3题目4题目5题目6总结 题目1 将下面的程序编译、连接,用 Debug 加载、跟踪,然后回答问题 assume cs:code, ds:data, ss:stack data segmentdw 0123h,0456h,0789h,0abch,0def…...
剑指offer -- 二维数组中的查找
二维数组中的查找_牛客题霸_牛客网 (nowcoder.com) 暴力查找法: 是一种简单直接的解决方法,可以用于在二维数组中查找目标值。该方法的思路是遍历数组的每个元素,逐个与目标值进行比较。 具体步骤如下: 从数组的第一行第一列开始,…...
3. 自然语言处理NLP:具体用途(近义词类比词;情感分类;机器翻译)
一、求近义词和类比词 1. 近义词 方法一:在嵌入模型后,可以根据两个词向量的余弦相似度表示词与词之间在语义上的相似度。 方法二:KNN(K近邻) 2. 类比词 使用预训练词向量求词与词之间的类比关系。eg:man&a…...
Hibernate的FlushMode
一、Session中FlushMode的设置: 在事务开启前设置FlushMode属性,方法: // session.setFlushMode(FlushMode.Always|AUTO|COMMIT|NEVER|MANUAL)。Service public class TestService {Logger log LoggerFactory.getLogger(getClass());AutowiredEntityM…...
二线程序员的出路
最近长沙不太平。去年被动离职一拨人之后,HR一直强调降本增效,人人自危,挤走一拨人,反正会有大量内卷失败的一线程序员进来填坑。当然留就有人走,前同事除了几个出去搞培训创业(后面解散了)的之…...
MKS SERVO4257D 闭环步进电机_系列2 菜单说明
第1部分 产品介绍 MKS SERVO 28D/35D/42D/57D 系列闭环步进电机是创客基地为满足市场需求而自主研发的一款产品。具备脉冲接口和RS485/CAN串行接口,支持MODBUS-RTU通讯协议,内置高效FOC矢量算法,采用高精度编码器,通过位置反馈&am…...
使用Actor-Critic的DDPG强化学习算法控制双关节机械臂
在本文中,我们将介绍在 Reacher 环境中训练智能代理控制双关节机械臂,这是一种使用 Unity ML-Agents 工具包开发的基于 Unity 的模拟程序。 我们的目标是高精度的到达目标位置,所以这里我们可以使用专为连续状态和动作空间设计的最先进的Deep…...
黑马学生入职B站1年,晒出21K月薪:我想跳槽华为
现在的Z时代,嘴上说着不要,身体却很诚实。 前两天,黑马发布了《2022年度互联网平均薪资出炉!高到离谱!》,信息传输、软件和信息技术服务业薪资遥遥领先!Z时代举头望着天花板,故作潇…...
一文看懂GPT风口,都有哪些创业机会?
新时代的淘金者,低附加价值的创业要谨慎,高附加价值、低技术门槛创业也要谨慎,主干道边上的创业也要谨慎。不少朋友看完不淡定了,干什么都谨慎,回家躺平好了,我有个朋友,靠ChatGPT,半…...
chatgpt赋能python:Python中的不确定尾数问题
Python中的不确定尾数问题 Python作为一种高级编程语言,被广泛应用于数据科学、机器学习、Web开发等众多领域。然而,Python在处理浮点数时会出现一些不确定尾数的问题,给程序员和数据分析员带来不少麻烦。本篇文章将介绍Python中不确定尾数的…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
FFmpeg:Windows系统小白安装及其使用
一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】,注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录(即exe所在文件夹)加入系统变量…...
