2022年7月12,第四组,周鹏,被算法折磨的一天【哭】【哭】【哭】【puls哭】

今天学习了JS的几种循环语法,说实话,前几天的简单让我大意了,没有闪,很成功的被搞崩了!

 

一杯水,一根烟,一个算法边写边骂是一天。

 

多少次,我满怀期待的以为它会出现想要的结果,

    但现实的残酷狠狠的折磨着我,

    离开了前几天的简单生活,

    我变得那么的不像我

    像枫叶在水里漂泊

    伤心像太平洋那么多

    赶紧来几根胡萝卜

    补一补眼里的维多

    为什么我这么难过

    还不是算法太折磨

    爱情我还能忍着

    “你”是个什么!

    等于吃饭没有锅

    冬天没有火

    这辈子请你别赖上我

    我已经哭了,

拜拜,写完我就去喝奶茶波波

 

 

好,牢骚发完,发今天的成果:

 

 

 

 

 

JS学习的第二天

 

 

对昨天的一些补充

1,Switch...case的效率问题

当case后面是字面量(常量)时,效率才比if……else高。

2,不要强行用Switch

 

##

1,for循环

语法:

 

    for(lei i = 0; i < 10 ; i++){
// 循环体
}
    let i = 0; 初始化条件,当 i = 0时,循环开始。且只在循环开始时走一次。只走一次。
i < 10 ; 判断条件,会和初始化条件配合循环的执行,决定了循环什么时候停止。
;循环体,循环在重复做什么事情
i++   循环条件,每次循环体执行完毕,让i产生变化

i可以看做一个局部变量

循环条件是可以根据实际情况更改的

当修改循环条件时,要确保循环可以向着终点前进去改变

当我们在开发中,尽量避免死循环。

 

死循环的特殊写法

 

1,

    for(let i = 0; i < 10;){
}

死循环,但不报错。

2,

for(lei i = 0;  ; i++){
}

3.

for(lei i = 0;  ; ){
}

4.

    for(lei ;  ; ){
}

如果需要用死循环,最好用第四种

 

 

2,for in语句

能做的事比较少,只能做遍历操作

遍历操作沿着某条搜索 路线 ,依次对树(或图)中每个节点均做一次访问,可以理解为下标。

let a=[10,5,9,7,-5,100,257,101];
for(let b in a){
输出方式(a[b])
}
会依次输出。

可以理解为,b是a数组的下标通过映射给a。

 

 

3,While循环

1,While

 

let a = 10;
while(条件表达式 a<100){
执行命令
}

while是个老傲娇,括号里面的条件表达式必须是才能执行!

 

while循环的执行步骤:

1, let a = 10 初始化条件,但其实和循环没啥关系,这是个全局变量……

2, 判断条件,a < 100

3, 执行循环体,执行的命令

4,变量的改变,a++

上面这些都只是这个例子代码里的对应条件哈,别有人傻乎乎的给弄上去。

 

While循环的各种条件都不好控制,for循环更加严谨。

但在写函数的时候,While循环便于管理函数的返回值。

 

4,do……While循环

相当于While循环的衍生物。

 

let a = 10
do{
	执行命令;
	a++;
}While(a > 100 )

1, let a = 10 初始化条件

2, 判断条件,a < 100

3, 执行循环体,执行的命令

4,变量的改变,a++

do……while循环相当于把while循环的循环体拿到了判断条件之上

do……while先执行一次,再判断,至少执行一次

while先判断,如果条件不为真,一次不走

这不纯纯买东西时候先用后付嘛

 

 

5,了解,JS内置函数

 

 

数组函数

1,concat() 连接

2, join() 设置分隔符连接数组为一个字符串

3,pop() 删除最后一个元素

4,sort() 排序,从小到大

 

 

Global:

1,isNaN():判断一个值是不是数字

2,parseFloat():把一个整数转换成小数

3,parseInt(): 取整,不四舍五入

4,number(): 把一个值转成number类型

5,string(): 把其他类型转成字符串

 

 

String:

1,charAt(1): 取出指定位置的字符

2,nindexOf('a'): 判断指定字符是否存在,如果存在返回下标。

3,lastIndexOf('a'): 从后往前找

4,replace('a' , 'b'): 替换字符

5,split('-'): 根据- 去拆分字符串,得到一个数组

6,substring(1,6):字符串截取

 

 

Math:

1,ceil() 向上取整;简单来说就是四色五入的入,强行入

2,floor() 向下取整;和上面那个相反

3,round() 四舍五入

4,random() 随即生成一个0-1的随机数

5.tan(),sin,cos,cot,三角函数

		6.	E,PI(这个PI是π的意思)

 

 

Date:

1,new Date();获取系统当前日期

2,getDate();返回日期的日,1~31

3,getHours():返回时间中的时,0~23

4,getMinutes():返回时间中的分,0~59

5,getSeconds():返回时间中的秒,0~59

6,getTime():获取系统当前时间

 

 

 

6,连接上html

老方法:

	<div id="div" class="a"><div>
	用ID	:
	let div = document.getElementById('div')
	用class	:
	let divs = 	document.getElementsByClassName('a')
	输出方法(div[0])
	这玩意儿拿的都是集合,即便只有一个也得写这个

新写法:

 

<div id="div" class="a"><div>
用选择器:
	let div = document.querySelector('#div')这里面是选择器,就是css里面那玩意儿!

 

JS可以改变div里面的东西,比如:

 

div.innertText = "改变的内容"
不加等号就是获取内容

7,事件

 

点击按钮弹出一个弹窗

<input type="button" onclick="JS里的函数" >

在html标签里,加入onclick,就是单击事件

ondbclick,双击事件

onblur,失去焦点

onfocu,获得焦点

onchange:改变

onloda:加载

当设置了对应的事件之后,会触发目标函数

 

    

posted @   牛杂刻师傅  阅读(103)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示