郑州Web前端学习入门之常用的JS工具函数介绍
JS是前端三要素之一,很多企业招聘过程中都会重点考察求职者对JS的掌握程度,掌握好JS就意味着你拥有更多获得高薪的机会。在接下来的郑州Web前端学习中,小编就给大家分享一下常用的JS工具函数以及使用方法。
选取DOM元素的方法
(注意:原生JS选取DOM元素比使用jQuery类库选取要快很多)
通过ID选取元素:document.getElementById('myid');
通过CLASS选取元素:document.getElementsByClassName('myclass')[0];
通过标签选取元素:document.getElementsByTagName('mydiv')[0];
通过NAME属性选取元素(常用于表单):document.getElementsByName('myname')[0];
JS修改CSS样式
document.getElementById('myid').style.display = 'none';
JS修改CLASS属性
document.getElementById('myid').className = 'active';
如果有多个CLASS属性,即用空格隔开////////
document.getElementById('myid').className = 'active div-1';
移除该元素上的所有CLASS
document.getElementById('myid').className = ''
注意:使用classList会优于使用className
document.getElementById('myid').classList.item(0);//item为类名的索引
document.getElementById('myid').classList.length;//只读属性
document.getElementById('myid').classList.add('newClass');//添加class
document.getElementById('myid').classList.remove('newClass');//移除class
document.getElementById('myid').classList.toggle('newClass');//切换,有则移除,没有则添加
document.getElementById('myid').classList.contains('newClass');//判断是否存在该class
JS修改文本
document.getElementById('myid').innerHTML = '123';
数组去重的方法
Array.prototype.unique = function(){
var tem = {}, //新建一个空对象,给数组中没出现过的数添加一个属性
arr = [], //去重后的数组
len = this.length; //要进行去重数组的长度
for(var i=0;i
if(!temp[this[i]]){ // 判断数组中的数作为属性名在temp里有没有属性值
temp[this[i]]="abc";//如果没有属性值,则说明没出现过给他一个属性值
arr.push(this[i]);//同时把这个数添加到去重后的数组里
}
}
return arr; //最后返回这个数组,这是hash算法
}
删除数组中存在重复的元素
function getUnique(someArray) {
tempArray = someArray.slice(0); //复制数组到临时数组
for (var i = 0; i < tempArray.length; i++) {
for (var j = i + 1; j < tempArray.length;) {
if (tempArray[j] == tempArray[i])
//后面的元素若和待比较的相同,则删除并计数;
//删除后,后面的元素会自动提前,所以指针j不移动
{
tempArray.splice(j, 1);
}
else {
j++;
}
//不同,则指针移动
}
}
return tempArray;
}
判断某个值是否在数组中
Array.prototype.in_array = function (e) {
for (i = 0; i < this.length; i++) {
if (this[i] == e)
return true;
}
return false;
}
判断某个值在数组中的位置
Array.prototype.indexOf = function (e) {
for (i = 0; i < this.length; i++) {
if (this[i] == e)
return i;
}
return -1;
}
跨浏览器绑定事件
function addEventSamp(obj, evt, fn) {
if (!oTarget) { return; }
if (obj.addEventListener) {
obj.addEventListener(evt, fn, false);
} else if (obj.attachEvent) {
obj.attachEvent('on' + evt, fn);
} else {
oTarget["on" + sEvtType] = fn;
}
}
跨浏览器删除事件
function delEvt(obj, evt, fn) {
if (!obj) { return; }
if (obj.addEventListener) {
obj.addEventListener(evt, fn, false);
} else if (oTarget.attachEvent) {
obj.attachEvent("on" + evt, fn);
} else {
obj["on" + evt] = fn;
}
}
如果你想了解更多郑州Web前端学习教程资料,可以关注“千锋郑州校区”微信公众号,定期发布技术热点和教程分析,帮助你更快入行Web前端。
相关推荐HOT
更多>>大数据培训学习什么,你了解多少
大数据培训学习什么?你了解多少?随着互联网技术的不断发展,大数据技术开始走进人们的视野,并成为现阶段吃香的技术能力之一。那么熟练掌握大...详情>>
2023-03-16 15:16:01云计算培训怎么样?可靠吗
云计算培训怎么样?可靠吗?靠不靠谱要看你什么要求了,因人而异。但如果你是想通过培训机构快速掌握好技能,然后进入行业,这个一般都没有问题...详情>>
2023-03-07 14:51:00java编程工资多少?主要学哪些内容
java编程工资多少?主要学哪些内容?java程序员的月收入在6000-20000不等,在一线城市有工作经验的java程序员的薪资收入会高一些,在二三线城市...详情>>
2023-02-24 14:56:07it工程培训机构,云计算难学吗
下面给小伙伴们列举一个学习大纲参考: 第一阶段: 零基础入门 1、计算机基础 2、Raid设置与网络服务基础 3、网络基础 第...详情>>
2022-12-01 17:48:04