<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    從制造到創造
    軟件工程師成長之路
    posts - 292,  comments - 96,  trackbacks - 0

    JavaScript 的基本語法

    JavaScript的標識符

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

    JavaScript大小寫敏感

    JavaScript程序代碼的格式
    以分號(;)結束

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

    基本數據類型與常量

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

    實型常量(即浮點型):12.32、5E7、4e59

    布爾值:true 和 false

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

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

    null 常量 變量已經有值而且值為空

    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>

    ?????????輸出結果為:undefined abc

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


    變量

    定義一個變量,系統就會為之分配一塊內存,程序可以用變量名來表示這塊內存中的數據。

    JavaScript為弱類型,所以不能指定變量類型,系統會自動指定類型

    聲明變量要使用Var關鍵字
    例如:var name

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

    對已賦值的變量賦予一個其他類型的數據
    var name2 = "222";
    name2 = 333;
    name2 = name2 + 1;?// name2等于334

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

    運算符

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

    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);

    ?????????????? 運行結果:

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


    賦值運算符:
    =????將一個值或表達式的結果賦給變量
    ???????例如:x=3
    +=????將變量與所賦的值相加后的結果在賦給變量

    比較運算符
    ==????當左邊操作數等于右邊操作數相等時返回True

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

    位運算符

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

    >>(右移運算符): 將左邊操作數在內存中的二進制數據右移右邊操作數指定的位數,左邊移空的部分補1
    相對于除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?????????????負數在內存中以補碼形式保存
    11?????????????原碼:0000?1000
    12?????????????反碼:1111?0111
    13?????????????補碼:1111?1000?(補碼為原碼取反加1)
    14?????????????
    15?????????????右移:1111?1100??(得到補碼形式的結果)
    16?????????????反碼:0000?0011?
    17??????????????????????????0000?0001?(減1,相對于加負1)
    18?????????????原碼:0000?0100?(-4)
    19?????????????
    20?????????????*/

    ???????????????運行結果:8右移1位得到4,-8右移1位得到-4

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

    << (左移運算符):右邊空位補0
    相對于乘2

    >>>? 將左邊操作數在內存中的二進制數據右移右邊操作數指定的位數,左邊移空的部分補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位,左邊補1
    ?9?>>>????4:?0100??40000000??右移1位,左邊補0
    10?????
    11?*/
    12?

    ????????? 輸出結果為:-40000000 和 40000000

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

    注意:移位操作不能改變操作數的值!

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

    ????????? 輸出結果:先輸出4,然后輸出8,最后輸出4

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

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

    常用鏈接

    留言簿(9)

    我參與的團隊

    隨筆分類(245)

    隨筆檔案(239)

    文章分類(3)

    文章檔案(3)

    收藏夾(576)

    友情鏈接

    搜索

    •  

    積分與排名

    • 積分 - 457956
    • 排名 - 114

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 成年女人看片免费视频播放器| 四虎影院免费在线播放| 香蕉高清免费永久在线视频| 久久精品国产亚洲AV久| 亚洲人成人无码.www石榴 | 亚洲一日韩欧美中文字幕在线| 一级毛片免费观看不卡的| 亚洲国产精品一区| 99精品视频在线视频免费观看| 亚洲国产精品久久久久久| 8x网站免费入口在线观看| 亚洲中文无码亚洲人成影院| 亚洲欧洲一区二区三区| 男女啪啪免费体验区| 中文字幕亚洲不卡在线亚瑟| a级毛片在线免费观看| 亚洲综合精品一二三区在线| 精品国产sm捆绑最大网免费站| 亚洲一区二区三区免费视频| 一级毛片在线免费播放| 久久久久久曰本AV免费免费| 日韩成人免费视频| 亚洲AV无码一区二区三区系列| 亚洲免费视频网站| 亚洲av无码偷拍在线观看| 亚洲福利精品电影在线观看| 亚洲香蕉免费有线视频| 免费一级做a爰片久久毛片潮| 国产亚洲精AA在线观看SEE| 久久乐国产综合亚洲精品| 国产成人免费片在线观看 | 亚洲国产av美女网站| 国产一级一毛免费黄片| 亚洲国产精品免费观看| 青青草a免费线观a| 好爽…又高潮了毛片免费看| 成人性做爰aaa片免费看| 亚洲中文无码永久免费| 亚洲精品无码久久千人斩| 美女视频黄a视频全免费| 成人午夜影视全部免费看|