• js从入门到精通(2.2-3.2)


    2.2 变量和常量

    2.2.1 常量

    在程序运行中保持不变的数据

    2.2.2 变量

    命名 字母或者下划线开头,中间可以是数字、字母或者下划线

    不能包含空格 加号 减号 不能使用关键字 严格区分大小写

    声明赋值

    只是声明变量,并未对其赋值,则默认为undefined。

    var可以多次声明同一个变量,如果该变量已经有一个初始值,那么此时相当于重新赋值。

    作用域 全局变量和局部变量 全局声明在方法外部

    生存周期 全局变量在主程序定义,一直到程序结束,局部变量只在函数之中,函数结束后,生存期结束。

    2.2.3 运算符

    typeof 返回操作数当前所容纳的数据类型

    new 创建对象 new constructor [(arguments)]

    constructor 必选项

    arguments 可选项

    2.3 数据类型转换

    转化为数值类型数据

    类型 转换后结果
    undefined NaN
    null 0
    逻辑型 false 0 true 1
    字符串 内容是数字 则为数字 否则NaN
    其他对象 NaN

    转化为字符型

    类型 转化后的结果
    undefined "undefined"
    null "null"
    逻辑 "false" "true"
    其他对象 若存在 为toString()方法的值 否则结果为"undefined"

    (流程控制 跳过)

    3 函数

    3.1超链接调用函数

    javascript:test()"

    3.2嵌套函数

     <script type="text/javascript">
        var outer = 10
            function outFunction(number1,number2){
                function innerFunction(){
                    alert(number1+number2+outer);
                }
                return innerFunction();
            }
        </script>
    </head>
    <body>
       <script type="text/javascript">
            outFunction(10,10);
       </script>
    </body>
    

    内部函数可以访问到 全局变量和外部函数的形参

    Maximum call stack size exceeded 报错

    在return innerFunction 写错 return outFunction 无终止递归

    js闭包 访问其他函数局部变量 可以使这些局部变量始终保持在内存中(有点类似于全局变量)

    http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html

    function f1(){
    
        var n=999;
    
        nAdd=function(){n+=1}
    
        function f2(){
          alert(n);
        }
        return f2;
      }
    
      var result=f1();
    
      result(); // 999
    
      nAdd();
    
      result(); // 1000
    

    第二次执行 reslut 的时候 不是重新定义变量n为 999

  • 相关阅读:
    建模算法(九)——拟合 (转)
    Swift初探一
    D3DXMatrixMultiply 函数
    魔术师发牌和拉丁方阵
    strip 命令的使用方法
    GDI编程小结
    Android多媒体-MediaRecorder 录制音视频
    Android 使用Gson解析json案例具体解释
    有依赖的背包问题(背包九讲)
    c++ 正則表達式
  • 原文地址:https://www.cnblogs.com/wuloucha/p/13400112.html
Copyright © 2020-2023  润新知