zoukankan      html  css  js  c++  java
  • 变量提升和函数声明提前

    1. instanceof是如何判断的?

      * 表达式: A instanceof B

      * 如果B函数的显式原型对象在A对象的原型链上, 返回true, 否则返回false

    2. Function是通过new自己产生的实例

    /////////////////////////////////面试题///////////////////////////////////////////////////

    function A () {

      }

      A.prototype.n = 1

      var b = new A()

      A.prototype = {

        n: 2,

        m: 3

      }

      var c = new A()

      console.log(b.n, b.m, c.n, c.m)

      /*

       测试题2

       */

      function F (){}

      Object.prototype.a = function(){

        console.log('a()')

      }

      Function.prototype.b = function(){

        console.log('b()')

      }

      var f = new F()

      f.a()

      // f.b()

      F.a()

      F.b()

    3:函数的提升

     1. 变量声明提升

      * 通过var定义(声明)的变量, 在定义语句之前就可以访问到

      * 值: undefined

    2. 函数声明提升

      * 通过function声明的函数, 在之前就可以直接调用

      * 值: 函数定义(对象)

    3. 问题: 变量提升和函数提升是如何产生的?

         面试题 : 输出 undefined

       */

      var a = 3

      function fn () {

        console.log(a)

        var a = 4

      }

      fn()

      console.log(b) //undefined  变量提升

      fn2() //可调用  函数提升

      // fn3() //不能  变量提升

      var b = 3

      function fn2() {

        console.log('fn2()')

      }

      var fn3 = function () {

        console.log('fn3()')

    }

  • 相关阅读:
    SQLServer2008设置 开启远程连接
    关于VS 中 HttpHandler 的设置 500.23
    类似谷歌,百度的文本框自动提醒
    MySQL主从配置
    docker 16 dockerfile案例-ONBUILD案例
    docker 15 dockerfile案例-CMD、ENTRYPOINT案例
    docker 14 dockerfile自定义mycentos
    docker 13 dockerfile的保留字指令
    2019年3月1日
    jenkins使用3----相关工具安装
  • 原文地址:https://www.cnblogs.com/love-life-insist/p/9063097.html
Copyright © 2011-2022 走看看