JavaScript – 1.事件 + 2.變數 + 3.判斷變數初始化 + 4.函數的聲明 + 5.匿名函數

來源:互聯網
上載者:User
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中有null、undefined兩種,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"/>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.