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"/>

原文地址:https://www.cnblogs.com/tangge/p/3091312.html