JS初级月考

2022-05-10  本文已影响0人  Delet

1、Dom0级和Dom2级有什么区别?Dom2级的优势在哪?

2、jQuery怎么绑定Dom0级和Dom2级事件?

$('ele').on('click',function(){
    console.log("DOM 0级 单击事件");
}
$('ele').click(function(){
    console.log("DOM 2级 单击事件 匿名函数");
})

//同样使用 jquery绑定 DOM 2级事件也有命名函数 和匿名函数
function a(){
        console.log("DOM 2级 单击事件 命名函数");
}
$('#box').click(a);

3、简述this 和 $(this)之间的区别是什么?

4、简述深拷贝和浅拷贝的慨念,并用代码实现一个数组的深拷贝?

//深拷贝封装:
function copy(arr){
     var arr1 = [];
      for(var i = 0;i< arr.length;i++){
            arr1[i] = arr[i];
      }
     return arr1;
}

5、如何阻止事件冒泡和默认事件?

event.stopPropagation();
window.event.cancelBubble = true;

//兼容
function bubbles(e){
  var ev = e || window.event;
  if(ev && ev.stopPropagation) {
    //非IE浏览器
    ev.stopPropagation();
  } else {
    //IE浏览器(IE11以下)
    ev.cancelBubble = true;
  }
  console.log("最底层盒子被点击了")
}
//阻止默认事件
event.preventDefault();  //IE下
window.event.returnValue = false; //非IE


//谷歌及IE8以上
e.preventDefault();
//IE8及以下
window.event.returnValue = false;
//无兼容问题(但不能用于节点直接onclick绑定函数)
return false;

6、请解释一下事件流、事件冒泡和事件捕获?

7、常用的事件类型

8、常见的Dom操作

9、简述cookie和localStorage的区别,并写出各自的添加,获取数据的方法。

//设置cookie的方法
function setCookie(name, value) {
        // document.cooki
//将获取到的字符串转化为数组,以分号和空格分隔开
    cook = cook.split('; ')
    //声明一个新数组,用来保存转化好的数组
    var arr = [];
    for(var i = 0 ; i < arr..length; i++){
        arr[i] = cook[i].split('=');
        if(arr[i][0] == name){
            return arr[i][1];
        }
    }
}


//封装一个 设置 localStorage 的方法
function setLocal(key,value){
        localStorage[key] = JSON.stringify(value);
}

//获取
var local = localStorage.num;
local = JSON.stringify(local);
console.log(local);

10、简述location对象的组成

上一篇 下一篇

猜你喜欢

热点阅读