zoukankan      html  css  js  c++  java
  • javascript笔记

    js数据类型分为:基本类型:数字、字符串、布尔值、undefined和null

            非基本类型(即对象)(或引用类型):数组,对象等

    一、变量属性
    var a=[];
    a[0]=1;
    a['foobar']=2;

    console.log(a.length);//1

    console.log(a.foobar);//2
    当一个变量被声明后。扩充其属性并不改变原数据类型

    二、命名提升

    foo();
    var foo=0;
    function foo(){
      console.log(1);
    }
    foo=function(){
      console.log(2);
    };
    声明的变量和命名函数都会被提升到代码的最前面,只不过声明的变量的赋值语句在代码中的位置不变。所以上面代码应该被理解为:

    var foo;
    function foo(){
      console.log(1);
    }
    foo();
    foo=0;
    foo=function(){
      console.log(2);
    };
    输出结果:1

    三、作用域

    foo();
    var a=true;
    if(a){
      function foo(){
        console.log('a');
      }
    }else{
      function(){
        consoloe.log('b');
      }
    }

    javascript并不是以代码段为作用域,而是以函数。再根据命名提升原则,所以代码改写为:

    function foo(){
      console.log('a');
    }
    function foo(){
      console.log('b');
    }
    foo();
    var a=true;
    if(a){
    }else{
    }
    结果:b

  • 相关阅读:
    LSTM
    Realsense D435i
    ubuntu18 realsenseD435i
    net
    test
    LSTM Accuracy
    boost x64 lib
    E0443类模板 "std::unordered_set" 的参数太多
    PropertySheet
    freetype 编译
  • 原文地址:https://www.cnblogs.com/hujiapeng/p/4966391.html
Copyright © 2011-2022 走看看