zoukankan      html  css  js  c++  java
  • js 变量、数据类型、作用域整理

    js 变量、数据类型、作用域整理

    一、Js 知识体系

    JS分为三部分:

      1.ECMAScript标准  js基本语法 

      2.DOM  文档对象模型     DOM提供了方法操作DOM树上的节点

      3.BOM  浏览器对象模型    通过BOM可以 获得屏幕分辨率 控制浏览器跳转 弹出框 

    更多参考:

    JavaScript 与 ECMAScript 的关系

    BOM中的顶级对象就是window,DOM中的顶级对象是document: JavaScript Window对象 整理

                  document是window的一个子对象。

        window.onload(){}

        setInterval()  clearInterval()

        setTimeout()  clearTimeout()

        Location 对象     

    DOM对象: HTML DOM / JavaScript DOM 简介 和整理

    二、Js 数据类型

    1.基本数据类型

    number / string / boolean / undefined / null    (可使用 typeof方法 来判断基础对象类型) 

    2.引用数据类型

     function / object

      其中需要注意的是:

        引用数据类型会开辟出堆内存,它们指向的是 内存地址。

        字符串 之间用 '+'  会拼接字符串,如果其他类型数据和字符串拼接,会被转换为字符串,这其中涉及到变量的隐式转换

    类型转换:

      数字类型转换:

        parseInt() / parseFloat() / Number()

        总结:想要转整数用parseInt(),想要转小数用parseFloat(),想要转数字:Number();要比上面的两种方式严格。

      其他类型转换:

        .toString() / String() / Boolean()

      补充:

        NaN 不是一个数字,或者不是数字与数字的计算就会得到 NaN  (isNaN()  判断一个值是不是 NaN)

        !    表示非,  !false == true  的结果为true  

    操作符:

      算数运算符:+  -  * / %

      算数运算表达式:由算数运算符连接起来的表达式

      一元运算符:++ -- 

      二元操作符: && || 

      三元操作符: 条件?结果1 : 结果2

        复合运算符: +=  -=  *= /= %=

      复合运算表达式:由复合运算符连接起来的表达式

    流程控制:

      if(){  } else if(){  }else{  }    

      switch(){  case  :;default:  ;  } 

      while(){  } / do{  }while() / for( ; ; ){  }  /for in

      其中:

        break 用来取消后续循环,continue  用来取消本次循环。

        switch中的条件判断 使用的是严格模式的全等于。

    三、Js 内置对象

     实例方法---->必须要通过new的方式创建的对象(实例对象)来调用的方法

      静态方法---->直接通过大写的构造函数的名字调用的方法(直接通过大写的对象名字调用的)

           

      Array 创建方式有两种: 可以直接通过字面量创建  /  通过构造函数进行创建 : var a =[]   /   var a = new Array()

       JavaScript数组(三)数组对象使用整理

      Math 对象 :

        Javascript 数学函数 Math(二)

      Date 对象

        JavaScript Date对象和函数 (一)

      String 对象

        字符串可以看作是由很多字符组成的数组,字符串有不可变的特性,字符串的值之所以看起来是改变的,那是因为指向改变了,并不是真的值改变了。 

        Javascript 字符串(三) String对象&方法

           JSON 对象

                    JavaScript JSON对象(一)

    四、Js 作用域

    作用域:

      分为全局作用域和局部作用域,根据所在的作用域不同,变量又分为全局变量和局部变量。

        其中还有块级作用域,被'{ }'包裹就可以看成一个块,其实的变量定义,使用var 定义可以被外部使用, 使用 const、let 不可以被外部使用。

        局部变量在函数作用域销毁时,就会被释放,而全局变量一旦被创建,就不会被释放,除非页面关闭(但是隐式全局变量可以被销毁,没有使用var声明的全局变量)。

      在所有作用域创建的时候,js引擎会有一个处理,预解释,它所做的事,就是提前把所有的变量声明了,所有的函数声明并定义了(所以你可以在定义函数之前来调用这个函数)。

        预解释中的变量提升,只会提升到当前作用域的最前面,而不是其他作用域。

        预解析会分段(多对的script标签中函数重名,预解析的时候不会冲突)。

           全局作用域,window:JavaScript Window对象 整理

  • 相关阅读:
    C/C++定义全局变量/常量几种方法的区别
    可变参数宏__VA_ARGS__
    mysql 命令重命名表RENAME TABLE 句法
    贝尔实验室的历史
    SVN代码回滚
    linux下查看进程占用端口和端口占用进程命令
    php操作mongodb中的ISODate格式日期
    Vim多行缩进技巧
    关于XCode工程中PrefixHead.pch文件的使用
    Object C函数指针@selector
  • 原文地址:https://www.cnblogs.com/tianma3798/p/15054560.html
Copyright © 2011-2022 走看看