JavaScript中的細節分析

來源:互聯網
上載者:User

JavaScript區分大小寫:在JavaScript中變數、函數都是區分大小寫,例如: 複製代碼 代碼如下:function myfunction(){}和
function myFunction(){}不同

JavaScript中核心對象Array、Object等也是區分大小寫。

單引號和雙引號:這個問題在學SQLServer拼接字串"select * from page where name='lida'"時就有疑惑:後面都的三個'到底是雙引號在前還是單引號在前?學的多了知道,雙引號是程式設計語言使用的,單引號是SQLserver標明字串類型的。但是在JavaScript中單引號和雙引號沒有特殊的區別,都可以用來建立字串,但是一般情況下JavaScript使用單引號,HTML等屬性值必須使用雙引號;同時單引號可以包括雙引號,雙引號也可以包括單引號 ;特殊情況下需要使用轉義符號"\",例如: 複製代碼 代碼如下:var temp='<p class="nameA">What\'s this?';

括弧的作用:和其他語言一樣,JavaScript中的括弧同樣是兩種作用,一種是當作分隔字元使用,例如:(1+1)*2;第二種作用是運算式,例如:(1+1)*2;第二種作用是運算式,例如:(function (){})()中被分開的括弧為分隔字元,後面的括弧表示執行方法。

函數的調用和引用: 複製代碼 代碼如下:var temp=myFunction();
var temp=myFunction;

因為括弧可以代表執行,第一個temp代表的是myFunction函數的傳回值,而第二個temp代表的是把myFunction賦值給temp。例如: 複製代碼 代碼如下:<script type="text/javascript">
// JavaScript Document
(function () {
function $() {
alert("正在Buffering!");
}
window['LD'] = {}
window['LD']['$'] = $;
}
)();
window.onload = LD.$;
</script>

網頁可以正常載入,因為這代表把$方法賦值給了window.onload,頁面載入啟動並執行是自己編寫的$()函數;如果把這句換成
window.onload=LD.$();運行結果如下;首先會顯示“正在Buffering”,然後是

這是因為onload事件不需要傳回值,而$函數也沒有傳回值,所以會導致尚未實現的錯誤。
換行:無論是用哪種引號建立字串,中間都不能包含強制分行符號。如下: 複製代碼 代碼如下:var temp='<h2 class="nameA">List</h2>
<ol>
</ol>'

將導致解析錯誤,可以使用\或+來換行: 複製代碼 代碼如下:var temp='<h2 class="nameA">List</h2>\
<ol>\
</ol>\
';

大括弧和分號可選:
在JavaScript中分號和大括弧不是必須的,例如alert('A');和alert('A')沒有區別,但是在if語句處運行有差異,最好不要省略。
重載
JavaScript是基於原型的物件導向,沒有如C#中的重載,在此我們可以稱之為替換,同名函數無論參數個數是否相同,程式都會執行最後一個同名函數,例如function alert(){}將會覆蓋JavaScript中的alert函數。
範圍和閉包
可以參加我的部落格《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.