js day3

1、循环结构


1、要素


1、循环条件


2、循环操作


2、while循环


while(条件){


循环操作


更新循环变量


}


3、do...while循环


do{


循环体


}while(条件);


特点:


先执行循环体,再判断循环条件


4、for循环


while循环的简化体


for(表达式1;表达式2;表达式3){


循环操作


}






表达式1:声明循环条件


表达式2:循环条件的判断


表达式3:更新循环条件


2、函数


语法:


function 函数名(参数列表){


函数体


}






参数列表:


声明时,是一个由,隔开的参数名称列表


调用时,按照位置和类型传递进来


返回值:


如果需要返回值的话,则通过 return 返回






匿名函数:


是一个没有名称的函数,专门为了某一特殊功能而存在


window.onload = function(){


... ...


}


3、数组


1、创建数组


var arr = [];


var arr = [1,2,3,4,5];


var arr = new Array();


var arr = new Array(5,4,3,2,1);


2、数组的使用


1、使用 下标 来取值


数组名[下标] = 值;


console.log(数组名[下标]);


2、length


获取数组的长度


使用场合:


1、循环遍历数组中的每个元素


for(var i=0;i<arr.length;i++){





}






for(var i=arr.length-1;i>=0;i--){





}


2、找到数组中,最新要插入的位置


arr[arr.length]=值;


==================================================


1、数组


1、关联数组


1、什么是数组


JS中的数组分为索引数字组 和 关联数组


索引数组:由数字做下标的数组都是索引数组


关联数组:由字符串做下标的数组都是关联数组


2、声明一个关联数组


var names = [];


names["xiyouji"] = "古代神话故事";


names["hongloumeng"] = "古代言情小说";






注意:length属性只能统计出 索引数组的长度


3、使用for ... in 遍历数组


for(var i in 数组){


i : 表示数组中所有的下标索引和字符串所有


}


2、数组的常用API


1、toString()


作用:将数组转换为字符串,并返回


2、join(seperator)


作用:返回一个,由指定连接符连接的数组元素的字符串


3、concat()


作用:拼接多个数组到一起,并返回结果


语法:arr.concat(arr2,arr3,...);


注意:该函数不会改变现有数组,会返回一个拼接后的副本


4、reverse()


作用:反转


语法:arr.reverse()


注意:该函数会改变现有数组的结构


练习:


1、随意从弹框中输入一个数字


2、将数组转换为二进制,并打印输出


5、sort()


1、作用:


对现有的数组进行排序


默认情况下,按照元素的Unicode码进行排序的


2、注意


sort()函数会直接改变现有数组的内容






3、允许通过自定的排序规则(函数)来指定数字的排序方式


语法:arr.sort(排序函数);






1、使用排序函数


//指定升序的排序函数


function sortAsc(a,b){


return a-b;


}


1、将sortAsc 指定为排序函数


2、数组会自动的将相邻的两个数组传递到参数位置处


3、如果返回值是 > 0的数字,则交换两个数字的位置,否则不变






/*指定降序的排序函数*/


function sortDesc(a,b){


return b-a;


}






为数组指定排序函数


arr.sort(sortAsc);


2、使用匿名函数


6、进出栈操作


栈式操作:提供了快速操作数组头部和尾部的元素


1、push()


入栈,向数组的尾部添加新元素,并返回新数组的长度


2、pop()


出栈,删除并返回数组尾部的元素


3、unshift()


向数组的头部添加新元素并返回新数组的长度


4、shift()


删除并返回数组头部的元素


3、二维数组


1、什么是二维数组


在一个数组中的每个元素又是一个数组


2、声明二维数组


var names = [


["孙悟空","猪八戒","沙悟净"],


["潘金莲","马蓉","李小璐"]


];






取出猪八戒:


names[0][1]


2、字符串 - String


1、声明字符串


var str1 = "字符串1";


var str2 = String("字符串2");


var str3 = new String("字符串3");


2、length


作用:返回当前字符串中字符的个数


3、常用函数 - String API


1、大小写转换函数


1、toUpperCase()


返回字符串的完全大写形式


2、toLowerCase()


返回字符串的完全小写形式


2、获取指定为的字符 或 Unicode码


1、charAt(index)


返回指定下标位置处的字符


var msg = "Hello World";


var r = msg.charAt(6);


console.log(r);//W


2、charCodeAt(index)


返回指定下表位置处的字符的Unicode码(十进制 )


var msg = "Hello World";


var r = msg.charCodeAt(0);//H的Unicode码


3、检索字符串


1、作用


查找子字符串在指定字符串中的位置


2、函数


1、indexOf(value,fromIndex)


value : 要查找的子字符串


fromIndex : 从哪个位置处开始查找,如果省略的话则从第一个字符的位置处开始查找


返回值:返回第一次出现子字符串的下标,如果没查询到子字符串的话,则返回-1


2、lastIndexOf(value,fromIndex)


作用:查找value最后一次出现的下标


注意:该函数的查找方式是从后向前找






判断一个字符串是否满足邮箱的格式:


zhangsanfeng@163.com


sanfeng.zhang@163.com






1、字符串中必须有 @ 符号


2、字符串中必须有 . 符号


3、最后一个 . 的位置 必须在 @ 之后


4、截取子字符串


函数:substring(start,end)


作用:返回从start到end-1之间的子字符串,如果省略end的话,则截取到字符串的尾部






练习:(5分钟)


1、从指定邮箱地址中提取用户名


zhangsanfeng@163.com


2、从指定邮箱地址中提取邮箱服务商名称


zhangsanfeng@163.com


3、从指定的身份证号中提取生日日期


220101196012123311


1960年12月12日


5、分割字符串


函数:split(seperator)


作用:使用seperator 对字符串进行拆分,并返回后的数组


ex:


var msg = "张三丰|男|65|19280202";


var arr = msg.split("|");


console.log(arr);


6、模式匹配


1、作用


配合着正则表达式来完成字符串的查找,替换..


2、正则表达式


约束字符串格式的表达式


语法:


/正则格式/修饰符






修饰符:


i :忽略大小写 (Ignorecase)


g :全局匹配 (Global)


m :允许多行匹配 (Multiple)


3、函数


1、replace(substr/regexp,replacement)


2、match(substr/regexp)


按照指定的格式匹配字符串,并将满足格式的字符串进行返回(数组)


3、search(substr/regexp)


返回满足substring或regexp格式的子字符串第一次出现的下标,没有找到返回-1






注意:search函数不支持全局匹配,将自动或略 g 





练习:


Microsoft is a big company,microsoft's color is red and has MICROSOFT logo like microsoft


1、将所有的microsoft(大小写)替换成"微软"


2、输出 共替换了多少处


3、其他内置对象


1、JS对象概述


对象是JS中重要的API


JS中包含多种对象


1、内置对象 - ES 定义


2、外部对象


1、window (BOM)


2、document (DOM) - W3C


3、自定义对象


function


对象:包含属性 和 方法


对象.属性


对象.方法()


2、RegExp 对象


RegExp : RegularExpressioin - 正则表达式


1、创建RegExp对象


1、var regExp = /匹配模式/修饰符;


2、var regExp = new RegExp("匹配模式","修饰符");


2、RegExp对象的常用方法


1、regExp.test(string);


string :要验证的字符串


如果string符合regExp的格式的话,则返回true,否则返回false


2、exec(str)


检索并返回满足指定格式的子字符串对象


3、Math对象


1、作用


执行与数学相关的运算和数据


2、属性


Math.PI


Math.E


3、方法


1、三角函数


Math.sin(x)


Math.cos(x)


Math.tan(x)


... ...


2、计算函数


Math.sqrt(x) : 开平方


Math.log(x) : 求对数


Math.pow(x,y) : 求x的y次方


3、数值比较函数


Math.abs(x) : 获取绝对值


Math.max(a,b,c,d,...) : 获取最大值


Math.min(a,b,c,d,...) : 获取最小值


Math.random() : 返回一个 0-1 之间的随机小数


Math.round(x) : 将x进行四舍五入到整数


4、Date对象


1、创建Date对象


1、获取当前系统的日期时间


var now = new Date();


2、初始化自定义日期时间对象


var date = new Date("2018/01/08 17:50:48");


2、方法


1、读取或设置当前时间的毫秒数


1、getTime()


返回子 1970.1.1 00:00:00 到 date 时间为止所经过的毫秒数


2、setTime(毫秒数)


2、读取时间分量函数


1、getFullYear()


读取当前时间对象的年份


2、getYear()


返回子1900年以来,到当前日期对象所经过的年数


3、getMonth()


返回 0-11 的数字来表示 1-12月


4、getDate()


返回当前时间对象的日


5、getDay()


返回当前时间对象的星期?


返回0-6来表示星期日-星期六


0 :星期日


1 :星期一


... ...


6 :星期六


6、获取时间


getHours() : 获取小时


getMinutes() :获取分


getSeconds() :获取秒


getMilliseconds() :获取毫秒


7、转换为字符串


1、toString()


2、toLocaleTimeString()


返回当前的时间字符串(时分秒)


3、toLocaleDateString()


返回当前的日期字符串(年月日)


3、作业


1、获取当前系统的日期时间


2、按照以下格式进行输出


xxxx年xx月xx日 xx时xx分xx秒 星期?














































************************************


2017.6.5


1900 ~ 2016 共多少天


2017.1 ~ 2017.5


累加 5






2018


1









1 2 3 4 5 6


7 8 9 10 11 12 13










arr = [1,2,3]


console.log("数组的内容为"+arr);


















if(arr[j]>arr[j+1]){


交换两个元素的位置


}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值