• 知识点


    1.DOMContentLoad和load

    1.DOMContentLoaded是HTML文档(CSS、JS)被加载以及解析完成之后触发(即 HTML->DOM的过程完成 );

    2.load需要在页面的图片、视频等加载完后被触发,而DOMContent不需要等待这些资源加载完成;

    ready

    1.调用dom.ready时,先判断下dom是否ready了,如果dom已经ready,则直接执行函数,否则,推入readyList数组等待执行。

     2.判断domready,标准浏览器下,有document.DOMContentLoaded事件表明domready,而IE下,则通过doScroll来模拟,原理是在IE中,任何DOM元素都有一个doScroll 方法。当documentElement可以调用doScroll时,证明dom加载完成了

    2.javascript的本地对象,内置对象和宿主对象分别是什么

    本地对象:Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError

    内置对象:内置对象有自己的特点,那就是无需使用new +构造函数创建,而是JavaScript引擎初始化的时候就被创建。比如Global对象和Math对象

    3.宿主对象

    所有的BOM和DOM对象都是宿主对象。window  Document

    3.ECMAScript 5中的Object.getPrototypeOf() 函数

    function Obj() {
        this.name = 'abc';
    }
    
    Obj.prototype.fullName = 'function(){
      console.log(123)
    }'; var obj = new Obj(); console.log( obj.__proto__.fullName ); console.log(Object.getPrototypeOf( obj) === obj.__proto__ );

    4.严格模式

    严格模式是什么

    1.为了消除JavaScript语法的不合理不严谨之处,减少怪异行为

    2.消除代码运行的不安全之处,保证代码安全执行

    3.提高编译效率,增加运行速度

    4.为未来新版本的JavaScript做好铺垫

    使用严格模式
    'use strict';

    内容

    • 变量必须先声明后使用
    • 函数参数不能有同名属性,否则报错
    • 不能使用with
    • 不能对只读属性赋值,否则报错
    • 不能使用前缀0表示八进制数,否则报错
    • 不能删除不可删除的属性,否则报错
    • 不能删除变量delete prop,会报错,只能删除属性delete global[prop]
    • eval不会在它的外层作用域引入变量
    • eval和arguments不能被重新赋值
    • arguments不会自动反映函数参数的变化
    • 不能使用arguments.callee
    • 不能使用arguments.caller
    • 禁止this指向全局对象
    • 不能使用fn.caller和fn.arguments获取函数调用的堆栈
    • 增加了保留字(protected,static,interface)
    严格模式声明的范围取决于其上下文。 如果在全局上下文(函数的范围之外)中声明严格模式,则程序中的所有代码都处于严格模式。如果在函数中声明严格模式,则函数中的所有代码都处于严格模式。



  • 相关阅读:
    LintCode "Maximum Gap"
    LintCode "Wood Cut"
    LintCode "Expression Evaluation"
    LintCode "Find Peak Element II"
    LintCode "Remove Node in Binary Search Tree"
    LintCode "Delete Digits"
    LintCode "Binary Representation"
    LeetCode "Game of Life"
    LintCode "Coins in a Line"
    LintCode "Word Break"
  • 原文地址:https://www.cnblogs.com/zhanghaifeng123/p/12039079.html
Copyright © 2020-2023  润新知