1、js引入方式
    外部,通过script标签 src属性 type=’text/javascript‘ (此处再次印证了js为脚本语言、以文本方式保存)引入
    script标签用于定义客户端脚本,即可包含脚本,也可指向外部脚本文件。
    注意:外部引入只引入外部文件就行(引入js的script的内部js代码不会执行)
    2、变量
    ECMAScript的变量是松散类型的,可以保存任意类型的值。每个变量只是保存值的命名占位符而已。
    变量声明,向系统声明存储空间,不能以数字开头,关键字和保留字不能用,类名开头推荐大写
    变量赋值 = (不是等号,是赋值)
    变量声明时如果忽略关键字,该变量将被声明为全局变量。但是这种情况在,es5严格模式下会报错
    3、js值类型
    1、原始值
    number string boolean undefined null symbol
    js赋值时,类型是根据值类型来判断的(无需声明int float)。弱类型语言。
    symbol为es6新增类型,表示唯一的标识。typeof Symbol( ) 返回 ‘symbol’。
    重新给变量赋值,内存空间的运行过程(不是给原空间直接赋值,而是重新开辟空间,来保存新值。原来的内存空间依然保存着原来的值。)
    var a = 3;
    var b = a;(申请了一个空间,将a的值赋值给b)
    a = 1;
    2、引用值
    Object Function Array
    引用类型变量也存在栈内存中,存的是指向堆内存的指针(地址),指向的堆内存空间保存着引用值,而且js是值传递

    4、js栈内存与堆内存
    栈内存,一般储存基本类型(原始类型)以及引用类型的指针原始类型一般大小已知或者大小有上限
    堆内存则储存引用类型的值。
    栈内存线性有序储存,容量不大,系统分配率高