今天完成的事
1,js知识点整理;
(1)数组方法every, some, filter, map, foreach
有着相同的参数传入:


返回布尔值:every, some
var numbers=[1,2,3,4,5,4,3,2,1];
var everyResult=numbers.every(function(item,index,array){
return (item>2);
});
alert(everyResult);//false
var someResult=numbers.some(function(item,index,array){
return (item>2);
});
alert(someResult);//true
返回数组结果:filter,map
var numbers=[1,2,3,4,5,4,3,2,1];
var filterResult=numbers.filter(function(item,index,array){
return (item>2);
});
alter(filterResult); //[3,4,5,4,3];
var mapResult=numbers.map(function(item,index,array){
return item*2;
});
alert(mapResult); //[2,4,6,8,10,8,6,4,2]
不返回值:foreach
var numbers=[1,2,3,4,5,4,3,2,1];
numbers.forEach(function(iterm,index,array){
//执行某些操作
});
本质与for迭代数组一样;
(2)作用域链优化性能;
这样可以在某个全局变量被频繁访问时,更改成局部变量定义后,可以减少性能消耗,达到优化的目的;
//查找变量document必须遍历整个作用域链,直到最后在全局对象中才能找到
functionchangeColor() {
document.getElementById("btnChange").onclick=function() {
document.getElementById("targetCanvas").style.backgroundColor="red";
};
};
//查找变量document可在局部变量找到
functionchangeColor() {
vardoc=document;
doc.getElementById("btnChange").onclick=function() {
doc.getElementById("targetCanvas").style.backgroundColor="red";
};
}
(3)数据深拷贝与浅拷贝;
浅拷贝——>仅拷贝对象的引用
深拷贝——>即拷贝对象引用,也拷贝对象引用的值
一维数组可用深拷贝方法:slice,concat,jQuery的方法extend
json对象:JSON的stringify与parase搭配使用;
复杂对象:自定义函数进行深拷贝
2,部分css知识点的完善;
明天的计划
1,整理框架涉及到的知识点;
遇到的问题
暂无
收获
1,验证程序完成,测试,bug修复;
https://blog.csdn.net/learning_web/article/details/103079188
评论