ES5 总结

一、JSON拓展

1、parse—— 将json字符串转为js对象

JSON.parse(text, reviver)

text:若传入的字符串不符合 JSON 规范,则会抛出 SyntaxError 异常;不允许逗号作为结尾。

reviver(可选):两个参数 为属性名、属性值,返回值为本次处理结果,作用域为当前遍历的对象;
函数的遍历顺序依照从最内层开始,按照层级顺序,依次向外遍历

JSON.parse('{"p": 5}', function (k, v) {
   
    if(k === '') return v;     // 如果到了最顶层,则直接返回属性值,
    return v * 2;              // 否则将属性值变为原来的 2 倍。
});                            // { p: 10 }

JSON.parse('{"1": 1, "2": 2,"3": {"4": 4, "5": {"6": 6}}}', function (k, v) {
   
    console.log(k); // 输出当前的属性名,从而得知遍历顺序是从内向外的,
            // 最后一个属性名会是个空字符串。结果见下图
    return v;       // 返回原始属性值,相当于没有传递 reviver 参数。
});
JSON.parse("[1, 2, 3, 4, ]");//不允许逗号作为结尾,

在这里插入图片描述
在这里插入图片描述

2、stringify——将js值(对象/数组)转为json字符串

JSON.stringify(value , replacer)

value
replacer(可选)

二、数组拓展

1、判断数组的方法:
  • Object.prototype.toString.call(obj); //"[object Array]"
  • obj.constructor === Array; // true
  • obj instanceof Array; // true
  • Array.isArray(obj); // true

拓展:类数组转为数组的方法?
①Array.prototype.slice.call(arrayLike)注意能调用call的只有方法,不能[]调用
②[].slice.call(arrayLike);
③Array.from(arrayLike)

2、获取成员的索引:indexOf 、 lastIndexOf

参数:查找的成员
返回值:索引值;不存在返回-1

3、forEach——代替for循环;数组迭代器方法

参数:函数(成员值,索引值,原数组){ }
作用域:window
返回值:始终为undefined

4、map——遍历数组并映射结果

参数:函数(成员值,索引值,原数组){ }
作用域:window
返回值:执行后的数组成员(新的数组)

5、fill——填充数组
6、some——数组中是否有某些成员满足条件

参数:函数(成员值,索引值,原数组){ } 函数return返回值:判断的依据;
some方法返回值:true代表至少有一个满足条件,false代表都不满足条件
对true敏感,遇到满足的停止执行;

7、every——数组中是否都满足条件

参数:函数(成员值,索引值,原数组){ } return返回值:判断的依据;
every方法返回值:true代表所有成员满足条件,false代表都不满足条件
对false敏感,一遇到不满足的就停止执行

8、filter——对数组过滤

参数:函数(成员值,索引值,原数组){ } return返回值:过滤的条件;
filter方法返回值:满足条件的成员组成的新数组

9、reduce——从前向后累加
10、reduceRight——从后向前累加

参数:函数(上一个累积结果,当前成员值,当前索引值,原数组)return返回值上一次累积结果

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值