美文网首页
JS数据类型&变量提升

JS数据类型&变量提升

作者: 楓丶無痕 | 来源:发表于2017-09-26 11:19 被阅读0次

    JS 有哪些数据类型?

    • JavaScript定义了7种数据类型,分别是数值、字符串、布尔值、对象、ES6新增的Symbol、undefined、null。
    • 数值、字符串、布尔值、Symbol称为原始类型的值,即他们是最基本的数据类型,不再细分。
    • 对象称为合成类型(又称复杂类型)的值,因为一个对象往往是多个原始类型值的合成,可以看作是一个存放各种值的容器。
    • 对象又细分为狭义的对象(object)、数组(array)、函数(function)、正则表达式(regexp)。
    • undefined、null,一般将他们看成两个特殊值。

    JS 变量声明提升是什么意思?

    • JavaScript引擎的工作方式是:先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果就是所有的变量声明语句,都会被提升到代码的头部,然后给它初始值undefined,然后才逐句执行代码,这就称为‘变量提升’,也叫做‘变量的声明前置’。
    console.log(a); // undefined  变量提升 var a = undefined
    var a = 1;
    console.log(b); //报错    b没声明/定义
    
    sayName('world');// hello world   函数声明的函数吊用可以放在函数前
    sayAge(10); //报错   函数表达式声明的函数 必须是声明在前,调用在后
    function sayName(name){
        console.log('hello ', name);
    }
    var sayAge = function(age){
        console.log(age);
    };
    

    相关文章

      网友评论

          本文标题:JS数据类型&变量提升

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