2016年5月25日晚上(妙味课堂js基础-1笔记一)

一、JavaScript基础

  1、JavaScript组成

    ECMAScript:解释器、翻译

    DOM:Document Object Model文档对象模型

    BOM:Browser Object Model 各组成部分的兼容性,兼容性问题由来(浏览器对象模型)

  2、变量类型 

    类型:typeof运算符

    用法、返回值

    常见类型: number、string、boolean、undefined、object、function

    一个变量应该只存放一种类型的数据

  注意:(1)关于object对象;

<script type="text/javascript">
        window.onload=function () {
            a=document.getElementById("div1")
            alert(typeof a);  //这里的a就是对象
        }
    </script>

     (2)关于function函数;

<script type="text/javascript">
        a=function () {
            alert(typeof a);    //这里的a就是函数
        }
    </script>

      (3)关于undefined;

<script type="text/javascript">
        var b;    
        alert(typeof  b);    undefined:1、你真的没有定义;2、虽然定义了,但是没有给赋值;
    </script>

  3、什么是对象?

  基本类型:12,”abcd“,true;(不可再分为其他东西,只由自身组成,而不是由其他东西组成);number、string、boolean、undefined、

  复合类型:对象  object、function、arr、

     如div id=”字符串“

        宽度=数字;

  4、变量类型转换

    parseInt() 函数可解析一个字符串,并返回一个整数。

<script type="text/javascript">
      var a='12';
        alert(parseInt(a)+1);
    </script>

  当输入的是下面的代码时:

<script type="text/javascript">
      var a="px";          //第一个数不是数字
        alert(parseInt(a));    //弹出的是NAN;非数字;
    </script>

  parseFloat() 函数可解析一个字符串,并返回一个浮点数。

  关于数据类型转换:

    1、显示类型转换(强制类型转换)

      -parseInt()、parseFloat();

      -NaN的意义和检测;

    2、隐式类型转换

      - ==、===;

      -减法;

  加号:1、字符串连接;2、数字相加

  减号:数字相减;

5、作用域和闭包

  变量作用域(作用范围)

    局部变量、全局变量;

<script type="text/javascript">
        var a;    //全局变量
        function aaa() {
            a=12;    //局部变量      
        }
        function bbb() {
            alert(a)
        }
        aaa();
        bbb();
    </script>

  闭包:如下代码所示:

<script type="text/javascript">
        function aaa() {      //父函数
            a=12;
            function bbb() {    //子函数
                alert(a)      //子函数可以使用父函数的局部变量;这种特性就是闭包。
            }
            bbb();
        }
        aaa();
    </script>

  

原文地址:https://www.cnblogs.com/zzjeny/p/5528782.html