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:加载
当设置了对应的事件之后,会触发目标函数
2022年7月12,第四组,周鹏,被算法折磨的一天【哭】【哭】【哭】【puls哭】的更多相关文章
- 2022年7月10 第四组 周鹏 CSS的基本认识
CSS 层叠样式表 网页美观 html相当于原材料,css用来加工好看 如何嵌入? 样式如何显示html元素? 样式通常存储在样式表中 把样式表添加到html元素里 定义CSS方式 1,行内样式,可以 ...
- 【五校联考1day2】JZOJ2020年8月12日提高组T2 我想大声告诉你
[五校联考1day2]JZOJ2020年8月12日提高组T2 我想大声告诉你 题目 Description 因为小Y 是知名的白富美,所以自然也有很多的追求者,这一天这些追求者打算进行一次游戏来踢出一 ...
- 【五校联考1day2】JZOJ2020年8月12日提高组T1 对你的爱深不见底
[五校联考1day2]JZOJ2020年8月12日提高组T1 对你的爱深不见底 题目 Description 出乎意料的是,幸运E 的小R 居然赢了那个游戏.现在欣喜万分的小R 想要写一张明信片给小Y ...
- JZOJ2020年8月12日提高组反思
JZOJ2020年8月12日提高组反思 真·难亿一点点 T1 题目长并附带伤害-- 暴力搜 对于字符串,我选择\(Pascal\) T2 概率问题,再见 T3 样例没懂,再见 T4 有史以来见过的条件 ...
- 2022年7月13日,第四组 周鹏 JAVA认识的第一天,附加一个用JS写的计算器代码
心情:╭(╯^╰)╮ ╮(╯﹏╰)╭ (╯﹏╰)b 罒ω罒 |*´Å`)ノ ( Ĭ ^ Ĭ ) (ㄒoㄒ) o(╥﹏╥)o /(ㄒoㄒ)/~~ (〒︿〒) ┭┮﹏┭┮ ε(┬┬﹏┬┬)3 ε(┬┬﹏┬ ...
- 2022年7月9日 第四组 周鹏 HTML的初认识
<!DOCTYPE html> <html lang="en"> <!-- 文档的根标签 --> <head> & ...
- 2022年7月14日,第四组 周鹏,认识JAVA的第二天(;´д`)ゞ(;д;)
那天,我遇到了JAVA 然后,我失去了头发 无论我用了多少办法 还是放不下那个它 我哭的像个傻瓜 但也没能留住它 如果再有一次从来 我愿为它披上薄纱 愿它安稳有个家 可我终究还是失去了它 失去了原本为 ...
- 【每日一题】【递归实现、自下而上、优化】-2022年1月12日-NC68 跳台阶
描述一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个 n 级的台阶总共有多少种跳法(先后次序不同算不同的结果). 数据范围:0 \leq n \leq 400≤n≤40要求:时间复杂度: ...
- Java学习笔记:2021年12月31日下午-2022年1月1日上午
Java学习笔记:2021年12月31日下午-2022年1月1日上午 摘要:主要记录了计算机的电气构成,学习Linux系统的原因以及关于Linux以及相关操作的基础知识. 目录 Java学习笔记:20 ...
随机推荐
- C语言下for循环的一点技巧总结
for循环是普遍应用与各种计算机语言的一种循环方式. 一般情况下, for循环规则:for(条件一:条件二:条件三) 条件一为满足条件,也就是条件一为1时,进入这个for循环.条件二为循环条件,也就是 ...
- 洛谷P2863 [USACO06JAN]The Cow Prom S (tarjan)
题目简述:一个有向图,求出这个图点数>1的强连通分量的个数. 那么就是tarjan求强联通分量的模板了. 记得要用一个数组标记节点是否在栈中. 1 #include<bits/stdc++ ...
- uoj220【NOI2016】网格
刚了几个小时啊,这tm要是noi我怕不是直接滚粗了.我判答案为1的情况试了几种做法,最后终于想到了一个靠谱的做法,然后细节巨多,调了好久,刚拿到97分时代码有6.2KB了,后来发现有些东西好像没啥用就 ...
- 消除两个inline-block元素之间的间隔
发现问题 两个inline-block元素之间的间隔.如下图 期望 消除两个inline-block元素之间的间隔. 解决方法 1.父元素字体大小设置为0 间隔的形成是非元素标签形成的 /** 方案1 ...
- 解决console控制台反复打印“WebSocket connection to ws://localhost:9528/sockjs-node/107/uadaszgz.websocket failed:Invalid frame header
element-admin-vue 项目console台一直报websocket连接失败 解决办法 1.vue.config.js中配置devServer.proxy的ws为false (我没成功) ...
- vue+spirngboot 分离技术实现图书信息的增删改查(改造这学期的课程设计【1】)
1.前端项目的创建 vue init webpack bookshopvue 安装axios http://www.axios-js.com/ npm install --save axios vue ...
- LabVantage仪器数据采集方案
LabVantage的仪器数据采集组件为LIMS CI,是一个独立的应用程序/服务,实现仪器数据的采集(GC.LC等带有工作站的仪器). 将仪器输出数据转换为LIMS所需数据并传输,使用Talend这 ...
- 编辑距离(Minimum Edit Distance)
编辑距离(Minimum Edit Distance,MED),也叫 Levenshtein Distance.他的含义是计算字符串a转换为字符串b的最少单字符编辑次数.编辑操作有:插入.删除.替换( ...
- gin框架——使用viper读取配置
什么是viper Viper是Go应用程序的完整配置解决方案,包括12-Factor(也称为"十二要素",是一套流行的应用程序开发原则. 其实我也不是很清楚)应用程序.它被设计为在 ...
- 嵌入式-C语言:通过结构体指针操作结构体内容
#include<stdio.h> #include<string.h> struct Student { char name[32]; int age; int height ...