zoukankan      html  css  js  c++  java
  • JavaScript – 1.事件 + 2.变量 + 3.判断变量初始化 + 4.函数的声明 + 5.匿名函数

    1.事件


    在超链接的点击里执行JavaScript:<a href="javascript:alert('哈哈')">哈哈</a>

    JavaScript中也有事件的概念,当按钮被点击的时候也可以执行
    JavaScript:
    • <input type="button" onclick="alert(99)" value="久久"/>
    • 只有超链接的href中的JavaScript中才需要加“"javascript:”,因为它不是事件,而是把“"javascript:”看成像“http:”、“ftp:”、“thunder://”、“ed2k://”、"mailto:"一样的网络协议,交由js解析引擎处理。只有href中这是这是一个特例。

    2.变量


    (1)JavaScript中即可以使用双引号声明字符串,也可以使用单引号声明字符串。主要是为了方便和html集成,避免转义符的麻烦。

    (2)JavaScript中有nullundefined两种,null表示变量的值为空,undefined则表示变量还没有指向任何的对象,未初始化。两者
    的区别参考资料。

    (3)JavaScript是弱类型,声明变量的时候无法:int i=0;只能通过var i=0;声明变量,和C#中的var不一样,不是C#中那样的类型
    推断。

    (4)JavaScript中也可以不用var声明变量,直接用,这样的变量是“全局变量”,因此除非确实想用全局变量,否则使用的时候最好
    加上var。

    (5)JS是动态类型的,因此var i=0;i="abc";是合法的。

    3.判断变量初始化


    隐藏行号 复制代码 这是一段程序代码。
    1. <script type="text/javascript">
    2. //alert(new Date().toLocaleDateString());
    3. var x = 0;
    4. if (x == null) {
    5.             alert("null");
    6.         }
    7. if (typeof (x) == "undefined") {
    8.             alert('undefined');
    9.         }
    10. if (!x) { alert('不x'); }
    11. </script>

            if(x){}//变量被初始化了或者变量不为空或者变量不为0。推荐用最后一种方法。

    4.函数的声明


    (1)JavaScript中声明函数的方式:

    function add(i1, i2) {
                return i1 + i2;
            }
    int add(int i1,int i2)//C#写法

    (2)不需要声明返回值类型、参数类型。函数定义以function开头。
            var r = add(1, 2);
            alert(r);
            r = add("你好", "tom");
            alert(r);

    (3)JavaScript中不像C#中那样要求所有路径都有返回值,没有返回值就是undefined。

    (4)易错:自定义函数名不要和js内置、dom内置方法重名,比如selectall、focus等函数名不要用。

    5.匿名函数


    var f1 = function(i1, i2) {
               return i1 + i2;
           }
           alert(f1(1,2));


    (1)类似于C#中的匿名函数。

    (2)这种匿名函数的用法在JQuery中的非常多

    (3)alert(function(i1, i2) { return i1 + i2; }(10,10));//直接声明一个匿名函数,立即使用。用匿名函数省得定义一个用一次就不用的函数,而且免了命名冲突的问题,js中没有命名空间的概念,因此很容易函数名字冲突。通过例子发现一旦命名冲突以最后声明的准

    (4)必须<script src="my1.js" type="text/javascript"></script>不能:<script src="my1.js" type="text/javascript"/>

  • 相关阅读:
    Qt 查询字符串数据
    #include <stdint.h>
    滤波器设计-巴特沃尔斯低通滤波设计 转
    小波学习之二(单层一维离散小波变换DWT的Mallat算法C++实现优化)--转载
    机器学习之Bagging与随机森林笔记
    机器学习之决策树笔记
    机器学习之softmax回归笔记
    机器学习之逻辑回归(Logistic)笔记
    机器学习之模型拟合效果的判断笔记
    机器学习最小二乘法笔记
  • 原文地址:https://www.cnblogs.com/tangge/p/3091312.html
Copyright © 2011-2022 走看看