美文网首页
2020-03-26

2020-03-26

作者: 有只Bug | 来源:发表于2020-03-26 23:49 被阅读0次

    1.事件委托是什么
    符合W3C标准的事件绑定addEventLisntener /attachEvent
    利用事件冒泡的原理,把自己的所触发的事件,让父元素代替执行!

    2.闭包是什么,有什么特性,对页面有什么影响
    闭包就是能够读取其他函数内部变量的函数。
    闭包的缺点:滥用闭包函数会造成内存泄露,因为闭包中引用到的包裹函数中定义的变量都永远不会被释放,所以我们应该在必要的时候,及时释放这个闭包函数

    3.如何阻止事件冒泡和默认事件
    (1)阻止事件冒泡
    e. stopPropagation();//标准浏览器
    event.canceBubble=true;//ie9之前
    (2)阻止默认事件
    为了不让a点击之后跳转,我们就要给他的点击事件进行阻止
    return false
    e.preventDefault();

    4.添加 删除 替换 插入到某个接点的方法
    obj.appendChild()
    obj.insertBefore() //原生的js中不提供insertAfter();
    obj.replaceChild()//替换
    obj.removeChild()//删除

    5.javascript的本地对象,内置对象和宿主对象
    本地对象为array obj regexp等可以new实例化
    内置对象为gload Math 等不可以实例化的
    宿主为浏览器自带的document,window 等

    6.document load 和document ready的区别
    (1)Document.onload 是在结构和样式加载完才执行js
    (2)window.onload:不仅仅要在结构和样式加载完,还要执行完所有的样式、图片 这些资源文件,全部加载完才会触发window.onload事件
    Document.ready原生中没有这个方法,jquery中有 $().ready(function)

    7.”==”和“===”的不同
    前者会自动转换类型,后者不会
    1==”1” null==undefined 结果都为true(只比较值)
    ===先判断左右两边的数据类型,如果数据类型不一致,直接返回false
    之后才会进行两边值的判断(比较类型和值)

    8.javascript的同源策略
    一段脚本只能读取来自于同一来源的窗口和文档的属性,这里的同一来源指的是主机名、协议和端口号的组合
    http,ftp:协议
    主机名;localhost
    端口名:80:http协议的默认端口
    https:默认端口是8083
    同源策略带来的麻烦:ajax在不同域名下的请求无法实现,
    如果说想要请求其他来源的js文件,或者json数据,那么可以通过jsonp来解决

    9.编写一个数组去重的方法

    var arr=[1,1,3,4,2,4,7]
    var arr1 = Array.from(new Set(arr))
    console.log(arr1)
    

    10.JavaScript是一门什么样的语言,它有哪些特点?
    (1)运行环境:浏览器中的JS引擎(v8.。。)

    (2)语言特性:面向对象,动态语言:

    //动态语言的特性
    var num=10;//num是一个数字类型 num="jim";//此时num又变成一个字符串类型 //我们把一个变量用来保存不同数据类型的语言称之为一个动态语言
    //静态语言:c# java c c++
    //静态语言在声明一个变量就已经确定了这个变量的数据类型, // 而且在任何时候都不可以改变他的数据类型

    javaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。JavaScript兼容于ECMA标准,因此也称为ECMAScript

    (3)基本特点
    1.是一种解释性脚本语言(代码不进行预编译)。
    2.主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。
    3.可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离
    4.跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。

    相关文章

      网友评论

          本文标题:2020-03-26

          本文链接:https://www.haomeiwen.com/subject/fufkuhtx.html