一个东西我们都要去思考为什么(why)?是什么(what)?怎么样(how)?
为什么
在后续代码的书写当中,我们可能要去获取很多的节点对象,获取的时候,我们不能一直书写documient.querySelector或者什么byid,byclass等等,都太麻烦了,所以我们干脆直接封装一个函数,然后获取节点对象的时候调用就可以了,节约时间,节省代码,提升效率。
解析
首先是封装一个函数,函数的名字叫做$,然后传进去一个形参,这个形参可以是任何的class名,id名等,后续看自己的需要。
然后获取对应的节点,这里用document.querySelectorAll,这样的话就不再用什么getElementsBy什么东西的了,这个All就是获取所有的符合的节点对象。
判断的原因:我们为什么在最后返回的时候要有一个判断呢,因为我们最终获取的时候,可能是一个节点,也可能是一整个节点对象伪数组,所以我们要区别开来。如果伪数组的长度为1,也就是只有一个,那么就返回下标为0的节点对象,否则就返回所有节点对象这个伪数组
代码
function $(ele){
var res =document.querySelectorAll(ele);//此处一定要是All
return res.length==1 ? res[0]:res;
}
//调用的时候直接 $('参数')