從制造到創(chuàng)造
          軟件工程師成長(zhǎng)之路
          posts - 292,  comments - 96,  trackbacks - 0

          JavaScript 的基本語法

          JavaScript的標(biāo)識(shí)符

          標(biāo)識(shí)符是指JavaScript中定義的符號(hào),例如,變量名、函數(shù)名、數(shù)組名等。
          標(biāo)識(shí)符可以由字母、數(shù)字、下劃線(_)和美元($)
          注意:標(biāo)識(shí)符不能以數(shù)字開頭

          JavaScript大小寫敏感

          JavaScript程序代碼的格式
          以分號(hào)(;)結(jié)束

          JavaScript程序的注釋
          ① // 單行注釋
          ② /*? ....? */ 中可以嵌套"http://",但是/*? */不能相互嵌套

          基本數(shù)據(jù)類型與常量

          整型常量
          ???a、十六進(jìn)制:以0x或者0X開頭,例如:0x8a、0Xff
          ?? b、八進(jìn)制:以0開頭,例如:0123
          ???c、十進(jìn)制:例如:12345

          實(shí)型常量(即浮點(diǎn)型):12.32、5E7、4e59

          布爾值:true 和 false

          字符串型常量:"a book of JavaScript"、"abc"、"a"、""。

          字符串中的特殊字符,需要以反斜杠(\)后跟一個(gè)普通字符來表示,例如:\r、\n,\b,\',\",\\

          null 常量 變量已經(jīng)有值而且值為空

          undefined 常量:變量不存在或者類型未定義

          ?1?<html>
          ?2?????<head>
          ?3?????????<meta?http-equiv="Content-Type"?content="TEXT/HTML;?Charset=GB2312">
          ?4?????????<title>?未定義類型?</title>
          ?5?????</head>
          ?6?????<body?bgcolor="white">
          ?7?????????<script?language?=?JavaScript>
          ?8?????????????<!--
          ?9?????????????????var?number;
          10?????????????????alert(number?+?"?abc");
          11?????????????//-->
          12?????????</script>
          13?????</body>
          14?</html>

          ?????????輸出結(jié)果為:undefined abc

          ???????????????????? ?snap0005.gif


          變量

          定義一個(gè)變量,系統(tǒng)就會(huì)為之分配一塊內(nèi)存,程序可以用變量名來表示這塊內(nèi)存中的數(shù)據(jù)。

          JavaScript為弱類型,所以不能指定變量類型,系統(tǒng)會(huì)自動(dòng)指定類型

          聲明變量要使用Var關(guān)鍵字
          例如:var name

          聲明變量的同時(shí)為其賦值
          例如:var name=222222222;

          對(duì)已賦值的變量賦予一個(gè)其他類型的數(shù)據(jù)
          var name2 = "222";
          name2 = 333;
          name2 = name2 + 1;?// name2等于334

          變量可以不先聲明直接使用
          例如:x=1234

          運(yùn)算符

          算術(shù)運(yùn)算符
          + 加法運(yùn)算符或正值運(yùn)算符 例如,x+5,+6。
          ?+ 還能實(shí)現(xiàn)多個(gè)字符串的相連,而且也能將字符串與其它類型的數(shù)據(jù)類型相連成一個(gè)字符串,條件是該表達(dá)式中至少有一個(gè)字符串,例如:"x"+123的結(jié)果為"x123"。
          ?
          %?求模運(yùn)算符(算術(shù)中的求余)a%b結(jié)果中的符號(hào)取決于a 的符號(hào)。
          ?

          1?????var?a?=?104;
          2?????var?b?=?a%10;????
          3?????var?c?=?a%(-10);
          4?????
          5?????var?x?=?-104;
          6?????var?y?=?x%10;
          7?????var?z?=?x%(-10);
          8?????
          9?????alert("b?=?"?+?b?+?";?c?=?"?+?c?+?";?y?=?"?+?y?+?";?z?=?"?+?z);

          ?????????????? 運(yùn)行結(jié)果:

          ????????????????????? ?snap0006.gif


          賦值運(yùn)算符:
          =????將一個(gè)值或表達(dá)式的結(jié)果賦給變量
          ???????例如:x=3
          +=????將變量與所賦的值相加后的結(jié)果在賦給變量

          比較運(yùn)算符
          ==????當(dāng)左邊操作數(shù)等于右邊操作數(shù)相等時(shí)返回True

          邏輯運(yùn)算符
          &&???邏輯與 兩邊只能是比較運(yùn)算的結(jié)果(布爾型)
          ||???????邏輯或
          !?????? 邏輯非

          位運(yùn)算符

          &????? ?只有參加運(yùn)算的兩位都為1,運(yùn)算的結(jié)果才為1,否則就為0。
          |???????? 只有參加運(yùn)算的兩位都為0,運(yùn)算的結(jié)果才為0,否則就為1。
          ^????????只有參加運(yùn)算的兩位不相同,運(yùn)算的結(jié)果才為1,否則就為0。

          >>(右移運(yùn)算符): 將左邊操作數(shù)在內(nèi)存中的二進(jìn)制數(shù)據(jù)右移右邊操作數(shù)指定的位數(shù),左邊移空的部分補(bǔ)1
          相對(duì)于除2

          ?1?????????????alert(8?>>?1);????????//?將8右移1位
          ?2?????????????
          ?3?????????????/*
          ?4???????????????????????? ?0000?1000(8)
          ?5?????????????? 右移1位????0000?0100(4)
          ?6?????????????*/
          ?7?????????????
          ?8?????????????alert(-8?>>?1);
          ?9?????????????/*
          10?????????????負(fù)數(shù)在內(nèi)存中以補(bǔ)碼形式保存
          11?????????????原碼:0000?1000
          12?????????????反碼:1111?0111
          13?????????????補(bǔ)碼:1111?1000?(補(bǔ)碼為原碼取反加1)
          14?????????????
          15?????????????右移:1111?1100??(得到補(bǔ)碼形式的結(jié)果)
          16?????????????反碼:0000?0011?
          17??????????????????????????0000?0001?(減1,相對(duì)于加負(fù)1)
          18?????????????原碼:0000?0100?(-4)
          19?????????????
          20?????????????*/

          ???????????????運(yùn)行結(jié)果:8右移1位得到4,-8右移1位得到-4

          ????????????????????? snap0007.gif????? ?snap0008.gif

          << (左移運(yùn)算符):右邊空位補(bǔ)0
          相對(duì)于乘2

          >>>? 將左邊操作數(shù)在內(nèi)存中的二進(jìn)制數(shù)據(jù)右移右邊操作數(shù)指定的位數(shù),左邊移空的部分補(bǔ)0

          ?1?var?a?=?0x80000000?>>?1;
          ?2?alert(a.toString(16));
          ?3?
          ?4?var?b?=?0x80000000?>>>?1;
          ?5?alert(b.toString(16));
          ?6?/*
          ?7??????????? 8:?1000
          ?8?>>????? c:?1100?-40000000??右移1位,左邊補(bǔ)1
          ?9?>>>????4:?0100??40000000??右移1位,左邊補(bǔ)0
          10?????
          11?*/
          12?

          ????????? 輸出結(jié)果為:-40000000 和 40000000

          ????????????????????????????????snap0010.gif???????? snap0009.gif

          注意:移位操作不能改變操作數(shù)的值!

          1?????????????var??b?=?8;
          2?????????????alert(b?>>?1);???????//?結(jié)果為:4
          3?????????????alert(b);??????????????? //?結(jié)果為:8
          4?????????????b?=?b?>>?1;???????????//?將b右移1位后的結(jié)果賦給b
          5?????????????alert(b);??????????????? //?結(jié)果為:4

          ????????? 輸出結(jié)果:先輸出4,然后輸出8,最后輸出4

          ????????????snap0011.gif????????? snap0012.gif???????? snap0013.gif
          posted on 2006-09-17 13:01 CoderDream 閱讀(386) 評(píng)論(0)  編輯  收藏 所屬分類: JavaScript

          <2006年9月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          常用鏈接

          留言簿(9)

          我參與的團(tuán)隊(duì)

          隨筆分類(245)

          隨筆檔案(239)

          文章分類(3)

          文章檔案(3)

          收藏夾(576)

          友情鏈接

          搜索

          •  

          積分與排名

          • 積分 - 459691
          • 排名 - 114

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 桐乡市| 武陟县| 新乐市| 乐业县| 涿州市| 古蔺县| 曲水县| 武强县| 德保县| 巫溪县| 贵德县| 双辽市| 余姚市| 苏尼特左旗| 丰县| 泗水县| 文山县| 韩城市| 格尔木市| 嘉峪关市| 志丹县| 祁东县| 汝城县| 太仓市| 陇西县| 潍坊市| 娄烦县| 大埔县| 济南市| 玉田县| 泸溪县| 久治县| 安义县| 合阳县| 怀仁县| 大冶市| 陆良县| 黔南| 大安市| 彰武县| 九江县|