JavaScript知识点梳理
* html + css + js 实现网页内容结构 , 表现 , 行为的分离
* html + css = 静态网页
* html + css + js = 动态网页 dhtml
* javaee 动态网页
1) javascript : 基于对象和事件驱动的脚本语言,是一种编程语言
* 编程语言: 变量,判断,循环 实现动态功能效果
* 基于对象: 语法与java面向对象语法类似,但没有完全实现面向对象的特征
* 事件驱动: js可以编写许多功能(函数,方法),可以不需要其他函数调用
可以通过浏览器的一些操作(点击,移动鼠标,按下键盘)触发js函数功能 (事件驱动)
* 脚本语言: js不能独立执行,需要配合html,运行在浏览器上。
* java源代码不能直接运行,需要通过编译产生字节码文件(检测语法),通过 jvm加载并运行程序
* js是一种解释性语言,没有编译过程,运行过程中边运行边解释(语法错误,逻辑错误10/0)
2) js组成:
* ECMAScript js引擎 语法标准
* DOM document object model 通过js操作html
* BOM browser object model 通过js操作浏览器(刷新浏览器,关闭浏览器,打开新浏览器,前进,后退)
3) js编写
a) 在html网页的<script>中嵌入编写js代码
<script type="text/javascript">
alert('我是一个js应用');
</script>
b) 将上述<script>中的代码原封不动的复制到.js结尾的文件中,使用<script>标签引入html
* 补充:
* 引入和嵌入不能使用同一个<script>
* 引入时,<script>的起始和结束必须完善
4) 基本语法:
(4.1) 变量:
* 是一个容器,可以装载数据
* 当前行产生了数据,需要在后面的代码行中使用,就需要将数据先装入变量。
* 变量使用就2种 装数据,取数据。
* 要想使用变量,需要先声明(定义)变量 : 类型 名称 ;
* 弱类型变量:
* js中的变量是弱类型变量
* 在定义变量时,无法确定变量未来装载数据的类型
* 使用var关键字定义
var i ; // String i ; int i ; double i ;
* 扩展:
弱类型变量具体类型有变量装载的数据决定,装入整形,变量类型就是整形。
弱类型变量可以装载任意类型的数据
var i = 10 ;
i = "duyi" ;
i = true ;
(4.2) 数据类型 (6种)
1. 数字类型 : number
* 包括整形和浮点型
* var i = 10 ;
* var i = 3.14 ;
2. 字符串类型: string
* js没有字符和字符串之分
* 字符串可以使用单引号或双引号包含
* var s = "duyi" ;
* var s = 'duyi' ;
3. 布尔类型: boolean
* 只有true、false 2个值
4. 对象类型: object
* null也是一种的特殊的对象值(对象的引用不存在)
* 产生对象
var obj = new Object(); 创建了一个没有属性和功能的对象
var obj = {} ; 创建了一个没有属性和功能的对象
* 自定义属性
* 使用对象的属性时,如果没有就自动创建。
* 使用对象属性
* obj.uname = 'duyi' ;
* alert(obj.uname ) ;//弹框 显示obj.uname属性值
* 扩展:创建对象的同时初始化属性
var obj = {
uname:'dmc',
age:17,
sex:'男'
};
5. 值未定义类型:undefined
* 只有1个值 undefined
* 定义了一个变量/属性,但没有赋值,默认值就是undefined
6. 函数类型: function
* 方法也是一个独立的数据
* 后面详细讲
* 扩展: 使用typeof关键字 获得变量数据的类型
var i = 10 ;
console.log(typeof i ) 浏览器控制台打印结构 [类似于 System.out.println();]
(4.3)运算符
1. 算数运算符: + - * / % ++ --
5/2 -> 2.5
2. 赋值运算符: = += -= *=
3. 比较运算符: > < == != === !==
* == 与 === 区别
* == 忽略类型比较
* === 带类型比较
4. 逻辑运算符: ! && ||
* 只有短路与和短路或
* & | 就表示位运算
5. 条件运算符(三目,三元) : boolean结果?值1:值2
(4.4) 分支判断
* if判断条件不仅仅可以是boolean结果,也可以是其他类型的结果
* 0表示false,非0表示true if( i != 0 ) --> if(i)
* null表示false if( obj != null) --> if(obj)
* undefined表示false
* switch与java类似。
(4.5) 循环
* while和do-while语法逻辑与java相同
* 循环的判断题条件与if一样,除了boolean结果,也可以是其他类型
* for循环注意i初始化
for(var i=0;i<10;i++){}
* 扩展: for-in循环
* 可以循环遍历数组中的元素,也可以循环遍历对象的属性(类似于反射机制)
for(int num : nums){}
for( i in array){
//array表示遍历的数组,i表示每次遍历获得的数组下标,可以根据下标获得数组的值
console.log(i+','+array[i]);
}
for( p in obj){
//obj表示遍历的对象,p表示每次遍历获得的对象属性名,可以根据属性名获得属性值
console.log(p+','+obj[p]); //user['uname'] === user.uname
}
(4.6) 数组
* 可以存储一组数据
* 创建数组
1. var array = new Array(); //创建一个长度为0的数组
2. var array = [] ; //创建一个长度为0的数组
* 数组的使用
* array[0] = 10 ; 赋值时,如果原来没有该位置,就开辟这个位置,且length=1
* array[1] = 10 ;
* array[10] = 10 ; 为小标为10的元素赋值成功,length=11 ,其中[2]...[9]位置的元素值undefined
* 扩展:初始化
* var array = new Array(10); //创建10个长度的数组,10个元素默认值为undefined
* var array = new Array(1,2,3,4); //设置初始元素
* var array = [1,2,3,4] ; //设置初始元素
* 数组属性
array.length 获得数组元素的长度。
* 数组方法:
array.push(); 向数组的末尾增加一个元素 (java中使用list集合造了栈Stack-Vector-List.push())
array.pop(); 移除数组中最后一个元素 (push + pop = 栈)
concat(array2) ; 连接两个数组元素
join('+'); 将数组中的元素使用指定符号组成字符串
reverse(); 数组反转
(4.7) 字符串
* 与java类似,有许多字符串操作的方法
* 常用方法: var str = "duyi is good" ;
str.length ; 字符数量(属性)
str.indexOf()
str.lastIndexOf()
str.substring()
str.replace('a','A')
str.split(',')
str.startsWith()
str.endsWith()
str.toLowerCase()
str.toUpperCase()
str.concat()
str.charAt()
(4.8) 日期
* var date = new Date();获得日期对象,存储当前系统日期
date.getTime(); 自1970-01-01 获得毫秒数
date.setTime(); 设置一个新日期的毫秒数
date.getFullYear(); 2021
date.getMonth() ; 月索引 4+1=5
date.getDate() ; 14日
date.getDay() ; 星期索引,从星期日开始(0)
date.getHours(); 13点
date.getMinutes(); 54分
date.getSeconds(); 30秒
(4.9) Math
Math.abs() 绝对值
Math.min(n1,n2) 返回最小的数
Math.max(n1,n2) 返回最大的数
Math.pow(m,n) 返回m的n次幂
Math.ceil() 向上取整
Math.floor() 向下取整
Math.random() 产生[0.0-1.0)随机数
Math.random()*10 ==> [0,10)
Math.random()*5+5 ==>[5,10)
Math.round() 四舍五入
(4.10) 其他常用的方法
parseInt(3.14) 将浮点数转换成整数 3
parseInt("120") 将符合数字格式的字符串转换成的数字 120
"120"+1="1201" , parseInt("120")+1=121
* 注意: parseInt("120abc") 将数字开头的字符串中,开头的数字部分转换成数字 120
只能开头。如果不是以数字开头的字符串,转换后获得NaN 表示"不是一个数字"
parseFloat("3.14a")将符合浮点数格式的字符串转换成浮点数 3.14
eval() 将符合某种格式的字符串按照那种格式转换或执行
eval('1+2+3'); -->6
var arr = eval('[1,2,3,4,5]'); ---> 转换成数组
(4.11)函数:
* 表示一个行为,一个动作,一个操作,一个功能 。 类似于java的方法。
* 创建函数(3种)
方式1:
function sum(num1,num2){
return num1+num2 ;
}
* 不用像java一样指定返回类型,可以根据需求,使用return返回所需要的数据即可。
* 参数列表的变量无序使用var修饰
方式2:
var sum = function(num1,num2){
return num1+num2 ;
}
* 当前函数被称为匿名函数
* 函数也是一种数据类型,所以函数就是函数类型的数据
* 既然函数是一个数据,就可以存入变量
* 变量名即为函数名。
方式3:
var sum = new Function("num1","num2","return num1+num2 ");
* 调用函数
fn1();
fn2(10,20);
var result = fn3();
var result = fn4(10,20);
* 扩展: 预编译问题(提升)
浏览器执行js是,会对函数和变量的声明有一个提升声明操作
//可以调用
a();
function a(){}
-----
//不可以调用
//知道有一个叫a变量,但不知道变量的值,所以无法调用
a();
var a = function(){};
* 扩展: 使用let关键修饰变量,阻止提升
//可执行
console.log(x);
var x ;
---
//不可执行
console.log(x);
let x ;
* 扩展:函数传参
* 在java中,定义方法时参数列表有几个变量,调用方法时就需要传递对应数量的实参
* 在js中,传递参数的实参数量可以与函数形参数量不一致
function sum(num1,num2){}
sum(10,20)
* num1=10,num2=20
sum(10);
* num1=10,num2=undefined
sum(10,20,30,40)
* num1=10,num2=20,?=30,?=40
* 每一个函数都内置了一个arguments数组对象(不用定义,直接使用)
* 该数组对象装载所有的参数
* 可以通过遍历获取
* 扩展: 变量的作用域
* 在函数中定义的变量,称为局部变量。只能在函数中使用
* 在函数外定义的变量,称为全局变量,所有函数中都可以使用。
* 在函数中直接初始化,未使用var定义的变量,也是全局变量
function f1(){
i = 20 ;
console.log(i);
}
function f2(){
console.log(i);
}
* 扩展:函数类型的参数和返回值
* js的数据类型中有一种类型:函数类型
* 函数类型的数据就是:函数
* 函数也是一种数据
* 调用函数时可以传递整形数据,字符串类型的数据,能不能传递函数类型的数据呢? 能
* 调用函数后,可以返回整形数据,字符串类型的数据,能不能返回函数类型的数据呢? 能
* 函数类型的参数如何使用。 函数类型的返回值如何使用
//var f1 = 值 ;
var f1 = function(){ console.log('duyi') };
var n1 = 10 ;
function f2(param){
//如果传递的是一个函数
//param存储的就是一个函数
//和f1存储一个函数是不是一个概念?
//f1中存储的函数怎么使用,f1相当于函数名 f1();
//param中存储的函数,param相当于函数名 param();
param();
return f1 ;
}
var f3 = f2(f1);
//f3变量存储的就是返回来的函数,f3相当于函数名 f3();
f3();
* 扩展:自调用函数
* 定义函数同时就执行函数,不需要单独的调用代码。
(
function f1(num){
console.log('duyi is good');
console.log(num);
}
)(10);
* 扩展:函数作为构造函数+this关键字创建对象
//像一个模板
function Car(cno,cname,color,price){
this.cno = cno ;
this.cname = cname ;
this.color = color ;
this.price = price ;
}
// var car1 = {cno:1003,cname:'qq',color:'red',price:60000};
// var car2 = {cno:1004}
var car1 = new Car(1001,'bmw','red',300000); //此时构造器中的this关键字表示car1
var car2 = new Car(1002,'benz',black',400000);//此时构造器中的this关键字表示car2
* 注意: this就表示创建的对象
* 注意: 构造对象时,如果属性的类型是一个函数类型,那么这个属性就是方法
var car = {
cname:'bmw',
getCname:function(){
return this.cname ;
}
}
---
function Car(cno,cname,color,price){
this.cno = cno ;
this.cname = cname ;
this.color = color ;
this.price = price ;
this.getCname = function(){
return this.cname ;
}
}
* 注意: 对象的原型链
* 使用构造器创建了2个对象
* 2个对象中获得的方法属性值是不同的
var f1 = car1.getCname ;
var f2 = car2.getCname ;
console.log(f1 == f2);
* 从功能而言,2个对象的相同方法做的是一样的式,执行的是相同的函数代码
* 如果相同的代码产生了2份,耗内存。
* 可以使用对象的原型链实现单例函数处理(类似于java的static)
Car.prototype.getCname = function(){
return this.cname ;
}
5) 事件:
* 通过操作浏览器或浏览器中的内容触发一个js函数调用。
* 事件分类
a) 浏览器事件
* 需要配合后面js-bom
* 打开浏览器
* 关闭浏览器
b) 鼠标事件
* onclick 鼠标左键单击事件
* 在某一个(按钮)标签上,按一下鼠标就会触发点击事件,就可以调用指定的函数
* 浏览器内部使用观察者模式实现事件响应
<button οnclick="t1()" οndblclick="t2()">按钮1</button>
<button >按钮1</button>
* ondblclick 鼠标左键双击事件
* oncontextmenu 鼠标右键单击事件
* onmousedown 鼠标按下
* onmouseup 鼠标抬起
* onmousemove 鼠标移动
* onmouseover 鼠标移入某块区域
* onmouseout 鼠标移出某块区域
* onmousewheel 鼠标滚轮事件
c) 键盘
* 一般都是针对于可以输入,可选择的表单标签
* onkeydown 键盘按键按下
* onkeyup 键盘按键抬起
d) 表单标签
* onfocus 表单组件获得焦点事件
* onblur 表单组件失去焦点
* onselect 选择组件内容
* onchange 改变组件内容
* onsubmit 表单组件提交请求时触发事件(一般在请求前验证请求数据是否合法)
* 从操作而言,点击按钮才开始提交的
* 但从编码而言,最终提交的不是按钮,是<form>表单
* 这个提交事件是属于表单的
* 在事件函数中通过返回值true、false来继续请求或终止请求
* 注意:
* 上述事件在标签中有对应的事件属性
* 在浏览器内部处理事件的机制
* 浏览器通过请求获得网页内容 (请求服务器,请求本地)
* 浏览器就会加载并处理网页内容
* 在处理过程中,会发现当前这个标签设置了一个事件属性(onsubmit)
* 第一件事,将该标签装入对应的观察者集合中
* 第二件事,根据事件属性的值,生成一个函数
οnsubmit="t2()"
从html角度而言,"return t2()" 是一个字符串值
浏览器内部 new Function("return t2()"); === function xx(){ return t2() };
* 当浏览器中在该标签上触发指定的事件时,马上就会通知观察者,观察者就会调用指定的函数
* 所以如果t2这个函数返回了一个false,这个false返回给了内部创建的函数,而没有返回给浏览器
* 最终需要在内部函数中再返回一次,返回给浏览器。
6) DOM : 文档对象模型
* 作用: 通过操作js对象,间接影响html内容,效果。
* dom原理:见图
* 浏览器中内置document对象,所有标签对应的标签对象都会按照标签的子父关系存储在document中。
* 可以从document中获得要操作的标签对象
* 可以通过标签对象操作对应的标签
(6.1) 标签整体操作
a) 创建标签对象
var div = document.createElement("div");
* 新创建的表现并没有显示在浏览器上,因为没有指定其显示的位置(子父关系)
b) 放置标签对象
parentElement.appendChild(childElement);
* 将子标签对象放置在父标签对象的末尾
* 子标签也会显示在父标签的结尾
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
就是ul的结尾
</ul>
* 扩展:
document.body 获得body标签对应的对象
parentElement.insertBefore(newElement , oldElement);
* 扩展: 在html中触发事件函数时,可以通过传递this表示当前的标签对象
<button οnclick="t1(this)">增加一个input标签</button>
* 注意: 不是只能放置新创建标签,可以放置任何能得到的标签
c) 删除标签对象
parentElement.removeChild(childElement);
d) 获得标签对象
var e = document.getElementById(id);
* 根据标签id属性值,找到第一个符合条件的标签对象
var eArray = document.getElementsByTagName(tagName);
* 根据标签的名字,找到所有符合条件的标签
* 扩展:
parentElement.getElementsByTagName(tagName);
* 在指定的父级标签中,找到符合条件的子标签。
<body>
<a></a>
<div>
<a></a>
</div>
</body>
var eArray = document.getElementsByClassName(className);
* 根据标签class属性值,找到所有符合条件的标签。
var eArray = document.getElementsByName(name) ;
* 根据标签的name属性值,找到所有符合条件的标签 (表单标签)
* 扩展:document.querySelector(css选择器) --> jquery
-----
* 已经找到了一个标签对象 (sourceElement)
var eArray = sourceElement.children ;
* 获得已知标签的所有子标签对象
var e = sourceElement.parentNode ;
* 获得已知标签的父级标签对象
var e = sourceElement.nextElementSibling;
* 获得已知标签的下一个兄弟标签对象
var e = sourceElement.previousElementSibling;
* 获得已知标签的上一个兄弟标签对象
-----
* 特殊情况
selectElement.options
<select>
<option></option>
<option></option>
</select>
table.rows
table.cells
row.cells
document.body
(6.2) 标签个体操作
a) 操作标签属性
i) 绝大多数情况下,标签有什么属性,标签对象就有什么属性
<input name="" value="" />
---
input.name , input.value
ii) 有些标签属性和标签对象属性不一致
<input class="" />
---
input.className=""
iii) 有些标签没有,但标签对象有的属性
div.tagName 获得标签名,获得的都是大写字母 div.tagName == 'DIV'
div.innerHTML 获得标签内容 “<a>百度</a>”
div.innerText 获得标签内的文本内容 “百度”
<div>
<a>百度</a>
</div>
iv) 有些标签属性值和标签对象属性值不同
<input readonly="readonly" disabled="disabled" checked="checked" selected="selected" />
---
input.readOnly=true/false
v) 有些标签属性对应的标签对象属性需要使用驼峰命名法
<input readonly="">
---
input.readOnly=true
b) 操作标签事件
* 从html设置事件而言,事件类似于标签的一个属性,只不过属性值是一个函数
<input name="" value="" οnclick="t1()" />
---
input.name , input.value
input.onclick = function(){
//coding
}
===>
new Function("t1()");
===>
function (){
t1();
}
* 扩展: 事件绑定
* 可以在一个标签上增加多个相同的事件:事件绑定
* btn.addEventListener('click',function(){ coding... });
* 了解: 阻止事件冒泡,阻止事件的默认行为
c) 操作标签样式
* 样式不能直接使用标签对象处理
* 需要通过标签对象获得一个样式对象
var style = div.style ; 获得了标签的行内样式属性,可以设置行内样式也可以获得行内样式
var style = getComputedStyle(div); 获得的样式对象只能获得所有样式不能设置样式
* 通过这个样式对象处理样式
i) 大多数情况下,css有的属性,样式对象也有
div{width:100px;height:100px;color:red;}
---
style.width , style.height , style.color
ii) 有些css样式属性由多个单词使用-组合而成:background-color,margin-top,border-bottom-width
对应的样式对象属性就是去掉-,多个单词符合驼峰命名法
style.backgroundColor , style.marginTop , style.borderBottomWidth
7) BOM
* 浏览器对象模型
* js引擎内置了一个对象window对象 --- bom对象
(7.1) window子对象
a) window.document
b) window.location 获取/设置浏览器url
* 通过location改变url,从而实现发送新的请求
* window.location.href = 'http://www.baidu.com'
c) window.history 获取浏览器url访问记录,一般用来实现后退,前进等功能
* window.history.go(-1);
d) window.event 事件对象
* 在触发事件时会产生事件对象
* event对象的获得存在浏览器兼容问题
* 有些浏览器(IE,Chrome)可以通过window.event直接获得事件对象
* 有些浏览器(FF)触发事件函数时,以参数形式传递event对象
function t3(event){
var e = event || window.event ;
console.log(e);
coding...
}
i) 可以通过event获得触发鼠标事件时的 坐标(x,y)
* 以浏览器左上角为0,0原点
* event.clientX , eventClientY
ii) 可以通过event对象获得键盘事件时的按键码(一般我们需要知道回车操作:13)
* event.keyCode 获得按键码
iii) 可以通过event对象阻止冒泡,阻止默认行为
* 取消冒泡:e.cancelBubble=true ;
* 取消默认行为: 只需要在函数中return false就可以了。
(7.2) window常用的方法
注意: 所有window的使用都可以省略window.
* document,event,location
a) window.alert(); 显示提示框
b) window.confirm(); 显示询问框
* 会根据选择的“确认”或“取消”返回一个boolean
c) window.open(); 发送请求,在一个新窗口显示
* open('http://www.baidu.com');
* 可以像超链接一样,请求的内容在指定的窗口展示
open(url,target) ;
open('http://www.baidu.com","_self/_blank/_parent");
* open(url,"_blank","width=500,height=500,left=100,top=100")
d) 定时器
var timer = window.setTimeout(function(){
//延迟1000毫秒执行(一次)
},1000);
* timer称为定时器对象,可以用来阻止定时器
window.clearTimeout(timer);
var timer = window.setTimeout(function(){
//每隔1000毫秒执行(n次)
},1000);
window.clearInterval(timer);
(7.3)
* 在js中我们所谓的全局变量和函数其实也是有所属,属于window对象
function t1(){
var i = 10 ; //i变量属于t1函数,只能在t1函数中使用
}
var obj = {i:10} ; //此时i称为obj对象的属性 obj.i, 表示i属于obj对象
var obj = {eat:function(){}} ;//此时function函数称为obj对象方法,属于obj对象
-----------
var i = 10 ; //此时i称为全局变量,所有的函数都可以使用,不在属于某一个函数
function t2(){} //t2,t3函数也不属于某一个对象,我们认为是一个独立的功能
function t3(){}
* 其实这些全局变量和我们认为的独立函数也属于某一个对象,window
i , t2()
window.i , window.t2()
(7.4) window事件
window.onload = function(){}
* 浏览器初始化事件,当浏览器加载完毕网页内容时,就会触发当前的事件函数
以上便是javascript必知必会内容,是java后端学习网页展示的基础,大家有什么问题可以在评论区提问,感觉有帮助的可以点个赞和关注,谢谢大家
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 【Java数据结构于算法】哈希表
哈希表哈希表的基本介绍代码实现哈希表的基本介绍 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查…...
2024/4/27 20:58:21 - 2022年投资的再思考
超级大熊市的滋味不好受的,我是知道自己受不了,早做打算。 现金流硬刚,几年一次的大级别熊市,太明显了。 活下来,这才是开始,这么高的成交量,代表的就是大家的不服气,我们回头看历史…...
2024/4/13 16:51:51 - SSM-Spring(自学时笔记)
00Spring spring: 分层的Java SE/EE 应用full-stack轻量级开源框架 以IoC(Inverse Of Control:反转控制)和AOP(Aspect Oriented Programming:面向切面编程)为内核 spring优势: 方便解耦,简化开发 AOP编程…...
2024/4/13 11:08:10 - 对vue2.0的v-for和v-if冲突问题一些见解
之前看过有一种关于v-for和v-if之所以产生冲突的解释,我觉得是比较合理的说法,这里记录一下。vue2里,同一个标签内v-for的执行优先级比v-if高,也就是说先执行循环渲染生成了这些dom元素,然后此时再去执行v-if的判断条件…...
2024/4/7 22:19:25 - 项目延期的一些原因
概述 没有特殊原因,项目延期,这个字眼是不能随便说的,如果项目才开始不久或者还有一半的时间,就开始提延期,是不负责任的行为。因为还有很多努力的空间呢,如何解决如何应对才是你该想的事情。如果有些风险&…...
2024/4/13 11:08:00 - xjoi9222
https://xjoi.net/problem/9222 时间:0.2 空间:32M 题目描述: 小明特别喜欢收集卡牌,每天放学都要买各种零食就为了收集卡牌。但是随着卡牌的增多,小明开始苦恼,他总是忘记某些卡牌的攻击力。他觉得每次…...
2024/4/18 18:58:31 - 负载均衡--ribbon
Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。 简单的说就是将用户的请求平摊的分配到多个服务上,从而达到系统的HA(高可用)。常用的负载均衡软件 Nginx 重写负载均衡算法看IRule接口 1.导入依赖 <dependency><g…...
2024/4/13 11:08:10 - SpringBoot全局异常处理
在SpringBoot默认的异常处理是返回一个HTML页面,但是在前后端分离的开发模式下,服务器出现异常应该以json格式返回数据给前端。 ControllerAdvice public class GlobalExceptionAdvice {ExceptionHandler(Exception.class)ResponseBodypublic Object ex…...
2024/4/24 14:23:44 - three.js实现管道流光
// 创建管道 如果想让管道 转折处附近多设几个点curve new THREE.CatmullRomCurve3([new THREE.Vector3(0, 200, 0),new THREE.Vector3(0, 200, -500),new THREE.Vector3(10, 200, -500),new THREE.Vector3(20, 200, -500),new THREE.Vector3(800, 200, -500)])tubeGeometry …...
2024/5/10 6:23:03 - 无聊的冷知识,arraylist,中 remove(Object obj),和 remove(int index) 重载问题
代码如下 public static void main(String[] args) {ArrayList<Integer> ls new ArrayList<>();ls.add(1);ls.add(2);ls.add(3);int num 2; //indexInteger num1 1; // objectls.remove(num1);System.out.println( ls.toString() );}在ArrayList中有两个 remov…...
2024/4/13 11:07:55 - Mybatis相应API
Mybatis相应API 1、SqlSession工厂构造器SqlSessionFactoryBuilder 2、SqlSession工厂对象sqlSessionFactory 3、SqlSession会话对象 <!--查询一个数据--><select id"findBy" resultType"user" parameterType"int">select * f…...
2024/4/18 10:59:52 - Allegro修改via net
...
2024/5/10 5:07:29 - VTK应用程序连接出现vtkRenderingOpenGL_AutoInit_Construct(void)报错解决方法一则
出现vtkRenderingOpenGL_AutoInit_Construct(void)报错: (1)具体报错为: error LNK2019: 无法解析的外部符号"void __cdecl vtkRenderingOpenGL_AutoInit_Construct(void)"(?vtkRenderingOpenGL_AutoInit_ConstructYA…...
2024/4/18 15:55:05 - GBase 8c 数据类型——4-二进制数据类型
bytea类型允许存储二进制串,如下: butes转义是将无法用ASCII字符表示的字节转换成特殊语义的语句。 如下表,表内为必须被转义的字符: 同时butes转义也会发生在输出时,如下为输出转义字节表:...
2024/5/10 6:36:41 - C语言的数组总结
文章目录一、一维数组1、一维数组的定义2. 一维数组的引用3. 一维数组初始化二、二维数组1. 二维数组的定义2. 二维数组的引用3.二维数组初始化三、字符数组1. 字符数组的定义2. 字符数组的引用3.字符数组初始化4、字符数组的结束标志5、字符数组的输入和输出一、一维数组 1、…...
2024/4/22 12:50:02 - Microsoft微软官方Win10 visual c++(vc++2019)运行库下载
最新支持Visual C 可再发行程序包下载 | Microsoft Docs本文列出了最新版本的包的下载Visual C 可再发行程序包链接。https://support.microsoft.com/zh-cn/help/2977003/the-latest-supported-visual-c-downloads Windows10 C/C运行库Visual Studio 2015、2017 和 2019下载地…...
2024/4/16 0:24:47 - div 设置滚动条大小(粗细)
<div class"nav" style"overflow:auto; overflow-x:hidden; "></div> 上面我设置隐藏水平滚动条,当内容超过高度时垂直滚动条会自动显示出来。 下面是滚动条的样式,可以设置宽度和颜色。 <style scoped lang"…...
2024/4/19 23:13:40 - SAP UI5 应用开发教程之三十五 - 如何把本地开发的 SAP UI5 应用部署到 ABAP 服务器上
本教程前 34 个步骤, SAP UI5 应用一直是在本地 Visual Studio Code 中开发并通过本地命令行 ui5 serve 启动然后本地测试的。 本步骤我们将学习,如何使用 SAP UI5 Tools 的命令行,一键将这个本地开发好的 SAP UI5 应用,部署到 ABAP On-Premises 服务器上运行。 要按照本…...
2024/4/13 11:08:46 - vue3+vite2+element plus
即时编译,按需编译。 新建项目 npm create vitejs/app npm install element-plus --saveimport Userlist from "./views/userlist.vue"; const tableData reactive([]);onMounted(() > {loadDate(tableData); }); const loadDate (data) > {data…...
2024/4/7 22:19:13 - 剑指 Offer 63. 股票的最大利润
题目描述: 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 1)的时候买入,在第 5 天&…...
2024/4/18 21:43:33
最新文章
- 文字图形化:UI设计师的必备能力,带你看看为什么要这么做。
在UI设计中,文字尽可能要进行图形化设计的原因有以下几点: 提高识别性: 图形化设计可以通过视觉效果和形状来吸引用户的注意力,从而提高文字的可识别性。这有助于用户更快地理解并记住信息,同时也可以增强品牌的认知…...
2024/5/10 10:52:32 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/9 21:23:04 - 汽车统一诊断服务UDS协议参考文章和视频
UDS基础知识介绍-电子发烧友网 【图解UDS】UDS汽车诊断标准协议(ISO14229)带你入门到精通-有驾 车载测试之UDS诊断协议9:0x27服务:解锁ECU_哔哩哔哩_bilibili UDS诊断的22服务(DID读取数据)和2E服务&…...
2024/5/9 22:48:13 - 2024年04月IDE流行度最新排名
点击查看最新IDE流行度最新排名(每月更新) 2024年04月IDE流行度最新排名 顶级IDE排名是通过分析在谷歌上搜索IDE下载页面的频率而创建的 一个IDE被搜索的次数越多,这个IDE就被认为越受欢迎。原始数据来自谷歌Trends 如果您相信集体智慧&am…...
2024/5/9 8:36:44 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/8 6:01:22 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/9 15:10:32 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/9 4:20:59 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/7 11:36:39 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/8 20:48:49 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/7 9:26:26 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/8 19:33:07 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/8 20:38:49 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/10 10:22:18 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/9 17:11:10 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57