首页 > 代码库 > 前端HR告诉你每日前端题
前端HR告诉你每日前端题
1、 使用原生JS写一个兼容主流浏览器的事件添加和删除封装函数
var eventUtil={
addEvent:function(ele,type,handler){
if(ele.addEventListener){
ele.addEventListener("on"+type,handler,false)
}else if(ele.attachEvent){
ele.attachEvent(type,handler)
}else{
ele.["on"+type]=handler
},
removeEvent:function(ele,type,handler){
if(ele.removeEventListener){
ele.removeEventListener(type,handler,false)
}else if(ele.detachEvent){
ele.detachEvent("on"+type,handler)
}else{
ele["on"+type]=null
}
}
}
2、 冒泡排序
var arr = [15,2,6,8,10,9];
for (var i = 0; i < arr.length-1; i++) {
for (var j = 0; j < arr.length-i-1; j++) {
if(arr[j] < arr[j+1]){
var temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
console.log(arr);
3、 jQuery对象和DOM对象相互转换
// 1. DOM 对象转成 jQuery 对象
// 对于已经是一个 DOM 对象,只需要用 $() 把DOM对象包装起来,就可以获得一个 jQuery 对象了,$(DOM 对象) 注: var是定义变量
// 如:
var v = document.getElementById("v"); //DOM对象
var $v = $(v); //jQuery 对象
// 转换后,就可以任意使用 jQuery 的方法。
// 2. jQuery 对象转成 DOM 对象
// 两种转换方式讲一个 jQuery 对象转换成 DOM 对象: [index] 和 .get(index);
// (1) jQuery 对象是一个数据对象,可以通过 [index] 的方法,来得到相应的 DOM 对象。
// 如:
var $v = $("#v"); //jQuery 对象
var v = $v[0]; //DOM 对象
// alert(v.checked); //检测这个checkbox是否被选中
// (2) jQuery 本身提供,通过.get(index) 方法得到相应的 DOM 对象
// 如:
var $v = $("#v"); //jQuery 对象
var v = $v.get(0); //DOM对象 ( $v.get()[0] 也可以 )
4、 从用户输入一个网址到网页最终展现到用户面前,中间究竟发生了什么?
/*
大致流程总结如下:
1.输入地址
2.浏览器查找域名的 IP 地址(这一步包括 DNS 具体的查找过程,包括:浏览器缓存->系统缓存->路由器缓存...)
3.浏览器向 web 服务器发送一个 HTTP 请求
4.服务器的永久重定向响应(从 http://example.com 到 http://www.example.com)
5.浏览器跟踪重定向地址
6.服务器处理请求
7.服务器返回一个 HTTP 响应
8.浏览器显示 HTML
9.浏览器发送请求获取嵌入在 HTML 中的资源(如图片、音频、视频、CSS、JS等等)
10.浏览器发送异步请求
*/
需要web前端课程工具和电子书,可以加群120342833
前端HR告诉你每日前端题