基礎-php高級lamp c9javascript pJavaScript01-基本語法_第1頁
基礎-php高級lamp c9javascript pJavaScript01-基本語法_第2頁
基礎-php高級lamp c9javascript pJavaScript01-基本語法_第3頁
基礎-php高級lamp c9javascript pJavaScript01-基本語法_第4頁
基礎-php高級lamp c9javascript pJavaScript01-基本語法_第5頁
免費預覽已結束,剩余57頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

JavaScript01-基本語法主講:郵箱:課前復習命名空間的基本概念如何定義命名空間命名空間的使用預習檢查本章內容JavaScriptJavaScript與Java的區(qū)別JavaScript程序的運行開發(fā)環(huán)境JavaScript的優(yōu)點與局限JavaScript基本語法1.

JavaScript人們通常所說的JavaScript,其正式名稱為ECMAScript。這個標準由ECMA組織發(fā)展和

。ECMA-262是正式的JavaScript標準。這個標準基于網景(Netscape)公司

JavaScript語言和微軟

JScript語言。JavaScript是一種基于對象(Object)和事件驅動(EventDriven)并具有安全性能的

語言。使用這種語言的目的是:與Web客戶交互作用,美化頁面等。JavaScript的特點1.JavaScript是一種編程語言,也是一種解釋性語言。JavaScript的語法基本結構形式與C++、Java十分類似。JavaScript是一種基于對象的語言。JavaScript具有跨平臺性。JavaScript是依賴于瀏覽器本身,與操作環(huán)境無關,只要能運行瀏覽器的計算機,并支持

JavaScript的瀏覽器就可正確執(zhí)行。安全性與簡單性。2.JavaScript和Java的區(qū)別JavaScript和Java在語法上很類似,但其本質有著根本的區(qū)別。Java是一種比JavaScript更加復雜的程序語言,而

JavaScript相對于Java來說,則是容易上手得多。二者完全沒有關系,網景(Netscape)公司只是為了借著Java語言比較火的東風,將LiveScript語言更名成為了

JavaScript語言。例如: 與雷峰塔的關系3.JavaScript程序運行開發(fā)環(huán)境Netscape

Navigator

3.0或Internet

Explorer

3.0及以上版本。用于編輯HTML文檔的字符編輯器。注意:JavaScript的程序是通過客戶端瀏覽器來解析的,他的解析與Web服務器無關。優(yōu)點:使用JavaScript可以在客戶端進行數(shù)據(jù)驗證,節(jié)省服務器端的資源??梢苑奖愕?各種頁面中的對象,使網頁更加友好。使多種任務僅在客戶端就可以完成而不需要網絡和服務器的參與,從而支持分布式的運算和處理。4.JavaScript的優(yōu)點與局限JavaScript的優(yōu)點與局限局限:兼容性?;ヂ?lián)網上有很多瀏覽器,如FireFox、InternetExplorer、Opera等,但各種瀏覽器支持JavaScript的程度是不

一樣的,所以各個瀏覽器運行JavaScript的效果會有一定的差距,有時甚至會顯示不出來。JavaScript不能打開、讀寫和保存用戶計算機上的文件。5.JavaScript的基本語法在HTML中使用JavaScript基本語法關鍵字和保留字變量數(shù)據(jù)類型操作符語句5.1

在HTML中使用JavaScript在HTML中使用JavaScript1.使用<script>JS代碼</script>src屬性:表示包含要執(zhí)行代碼的外部文件。

type屬性:text/javascript(可省略)<scripttype=“text/javascript”>alert(‘

o,js’);</script>在HTML中使用JavaScript2.使用<script></script>

導入js文件。的src屬性時,script中一定不能放入注意:當使用script任何JS代碼。例如:<scriptsrc=‘test.js’>之間不允許加入任何JS代碼….</script>注意:<script> 可以放到html頁面的任何地方。在HTML中使用JavaScript使用事件傳入JavaScript代碼<div

onclick=“alert(‘

o,js’)”></div>使用<a

href=“javascript:alert(‘

o,js’);”></a>5.2

JavaScript的基本語法區(qū)分大小寫變量、函數(shù)名和操作符——都區(qū)分大小寫標識符第一個字符必須是一個字母、下劃線或是一個 符號$其他字符可以是字母、下劃線、 符號或是數(shù)字注意:不能把關鍵字、保留字、true、false和null用作標識符5.2

JavaScript的基本語法3.注釋//……/*…*/單行注釋多行注釋4.語句JavaScript中的語句以一個分號結尾,如果省略分號,則由解析器確定語句的結尾,一般情況下,換行會被當做一個語句的結尾。5.3關鍵字和保留字5.關鍵字和保留字break

elsenewvarcase

finallyreturnvoidcatch

forswitchwhile……….enumintshort……….5.4

JavaScript中的變量6.變量定義變量時要使用var操作符(注意var是一個關鍵字),后跟變量名稱(一個標識符),如下所示:var

message;也可以直接初始化變量或不使用var(但不

)var

message=‘hi’;

message=100;注意:使用var操作符定義的變量將成為定義該變量的作用域中的局部變量。5.2

JavaScript的基本語法6.變量可以使用一條語句定義多個變量,只要像下面這樣把每個變量用逗號分隔開即可:var

message=“hi”,found=false,age=100;JavaScript的數(shù)據(jù)類型基本數(shù)據(jù)類型a.字符串

b.數(shù)值型

c.布爾型復合數(shù)據(jù)類型

a.對象b.數(shù)組其他數(shù)據(jù)類型a.函數(shù)

b.nullc.undefined數(shù)據(jù)類型的轉換a.隱式類型轉換

b.顯式類型轉換字符串型字符串型是JavaScript中用來表示文本的數(shù)據(jù)類型,是由Unicode字符、數(shù)字和標點符號組成的一個字符串序列。字符串通常是由單引號或是雙引號括起來的。單引號和雙引號均可解析轉義字符單引號和雙引號均不能解析變量變量與字符串、變量與變量要使用+來連接。單引號和雙引號可以互相嵌套,如果單引號中要嵌套單引號,需要將單引號轉義,同理,雙引號相同。數(shù)值類型最基本的數(shù)值字面量格式是十進制整數(shù):var

num

=10;除了以十進制表示外,整數(shù)還可以通過八進制或十六進制的字面值來表示:var

num

=

070;var

num

=

0xA;//八進制數(shù),以0開頭//十六進制數(shù),以0x開頭注意:雖然數(shù)值可以用八進制或十六進制來表示,但在進行算術計算時,所有以八進制和十六進制表示的數(shù)值都將轉換成十進制數(shù)值。數(shù)值類型1.浮點數(shù)值所謂浮點數(shù)值,就是該數(shù)值中必須包含一個小數(shù)點,并且小數(shù)點后面必須至少有一位數(shù)字。var

num

=

1.1;var

num

=

0.1;var

num=.1;

//有效,但不如果小數(shù)點后面沒有跟任何數(shù)字(如1.),可以作為整數(shù)值來保存。如果浮點數(shù)值本身表示的就是一個整數(shù)(如1.0),該值會被轉為整數(shù)。數(shù)值類型可以使用e來表示科學

。var

num=1.2e3;

//等于1200浮點數(shù)值的最高精度是17位小數(shù),但在進行算術計算時其精度遠遠不如整數(shù)。思考:0.1加0.2的結果是多少?數(shù)值類型注意: 不要測試某個特定的浮點數(shù)的值!例如:var

a

=

0.1;var

b

=

0.2;if(a+b

==

0.3){alert(“輸出了”);}這里是不會彈出的!數(shù)值類型2.數(shù)值范圍由于內存的限制,

的JavaScript不能保存所有的數(shù)值。在大多數(shù)瀏覽器中,最小值是5e-324;最大值為1.7976931348623157e+308,如果某次的計算結果超出這個范圍,那么這個值將自動轉換為Infinity(正無窮)和-Infinity(負無窮);Infinity不是能夠參與計算的數(shù)值,可以使用isFinite()函數(shù)來判斷這個數(shù)值是不是無窮的。數(shù)值類型3.NaNNaN,即非數(shù)值(Not

a

Number)是一個特殊的數(shù)值,這個數(shù)值用于表示一個本來要返回數(shù)值的操作數(shù)未返回數(shù)值的情況。例如:在其他語言中,任何數(shù)值除以0都會導致錯誤。但在

JavaScript中,任何數(shù)值除以0會返回NaN,因此不會影響其他代碼的運行。數(shù)值類型NaN的特點:任何涉及NaN的操作,結果都為NaNNaN與任何值都不相等,包括NaN本身。例如:下面的代碼會返回falsealert(NaN

==

NaN);可以使用isNaN()函數(shù)來判斷某一個值是否是NaN類型。思考:使用isNaN來判斷下面的值,返回什么?NaN

10

“10”

“blue”

true數(shù)值類型數(shù)值轉換:可以使用三個函數(shù)Number()、parseInt()和

parseFloat()將一個非數(shù)值轉換為數(shù)值。

Number()函數(shù)的轉換規(guī)則:1.如果是布爾值,true和false將分別轉換為1和02.如果是數(shù)字值,只是簡單的傳入和返回3.如果是null,返回04.如果undefined,返回NaN數(shù)值類型5.如果是字符串,遵循下列規(guī)則:a.

“11”會變成11,“011”會變成11b.“1.1”會變成1.1

c.“0xf”會變成相同大小的十進制整數(shù)值d. 如果字符串是空的,則將其轉換為0e.

如果字符串包含除上述格式之外的字符,則將其轉換成NaN數(shù)值類型思考:var

num

=

Number(“var

num

=

Number(“”);o,lampbrother”);var

num

=

Number(“000011”);var

num

=

Number(true);分別返回什么?數(shù)值類型parseInt()的轉換規(guī)則:忽略字符串前面的空格,直到找到第一個非空格字符如果第一個字符不是數(shù)字或者是負號,返回NaN空字符串,返回NaN如果第一個字符是數(shù)字,會繼續(xù)解析第二個字符,直到解析完所有后續(xù)字符或遇到了一個非數(shù)字字符。如果字符串以0x開頭且后面跟數(shù)字字符,就會將其轉為16進制數(shù),同樣,八進制也一樣。數(shù)值類型思考:下面結果返回什么?parseInt(“1234blue”);parseInt(“”);parseInt(“0xA”);parseInt(22.5);parseInt(“070”);parseInt(“70”);parseInt(“0xf”);數(shù)值類型parseFloat()也是從第一個字符開始解析每個字符,而且也是一直解析到字符串末尾,或者解析到遇見一個無效的浮點數(shù)字字符為止。規(guī)則如下:第一個小數(shù)點是有效的,第二個小數(shù)點無效始終忽略前面的0,不分進制數(shù)十六進制會被轉換成0空字符串轉換為NaN數(shù)值類型思考:下面結果返回什么?parseFloat(“1234blue”);parseFloat(“0xA”);parseFloat(“”);parseFloat(“22.5”);parseFloat(“22.34.5”);parseFloat(“070.5”);parseFloat(“3.12e7”);布爾類型3.布爾類型布爾類型的字面值只有兩個,true和false,可以使用Boolean()函數(shù)將一個非布爾類型轉換為布爾類型。注意:true和false是嚴格區(qū)分大小寫的數(shù)據(jù)類型

轉換為true

轉換為false布爾型truefalse字符串任何非空字符串“”(空字符串)數(shù)值任何非零數(shù)字值0和NaN對象任何對象nullundefinedn/aundefined復合數(shù)據(jù)類型對象對象其實就是一些數(shù)據(jù)的集合,這些數(shù)據(jù)可以是字符串型、數(shù)字型和布爾型,也可以是復合型。數(shù)組數(shù)組與對象一樣,也是一些數(shù)據(jù)的集合,這些數(shù)據(jù)也可以是字符串型、數(shù)字型、布爾型、或者是復合型。與對象不同,數(shù)組中的數(shù)據(jù)并沒有命名,不能通過名字來

該數(shù)據(jù)。在數(shù)組中,為每個數(shù)據(jù)都編了一個號(從0開始),為數(shù)組的下標。其他數(shù)據(jù)類型1.函數(shù)函數(shù)是一段可執(zhí)行的JavaScript代碼,在JavaScript中,函數(shù)可以帶有0個或多個參數(shù),也可以返回一個值或不返回值。

2.nullnull是一個特殊的數(shù)據(jù)類型,其所代表的意思是“空”。需要注意,這個空并不代表是0或空字符串。null代表沒有值,不是一個有效的數(shù)字、字符串、也不是數(shù)組、對象和函數(shù),什么數(shù)據(jù)類型都不是。其他數(shù)據(jù)類型3.undefinedundefined也是一個特殊的數(shù)據(jù)類型,只有定義了一個變量但沒有為該變量賦值,使用了一個并未定義的變量、或者是使用了一個不存在的對象的屬性時,JavaScript會返回undefined。數(shù)據(jù)類型的轉換1.隱式類型轉換所謂隱式類型轉換,就是不需要程序員定義,JavaScript會自動將某一個類型的數(shù)據(jù)轉換成另一個類型的數(shù)據(jù)。JavaScript隱式類型轉換的規(guī)則:將類型轉換到環(huán)境中應該使用的類型。例如:if(1){//1會自動轉換成true.write(‘ok’);}數(shù)據(jù)類型的轉換可以隱式類型轉換的情況:數(shù)字類型:在字符串環(huán)境下可以隱式轉換為“數(shù)字”,在布爾環(huán)境下,可以隱式轉換為true(非0數(shù)字,0為false)非空字符串:在數(shù)字環(huán)境下,可以隱式轉換為字符串中的數(shù)字或NaN;在布爾環(huán)境下,可以隱式轉換為true??兆址涸跀?shù)字環(huán)境下可以隱式轉換為0;在布爾環(huán)境下可以隱式轉換為false;字符串”true“:在數(shù)字環(huán)境下可以隱式轉換位1;布爾為true字符串“false”:數(shù)字環(huán)境為0,布爾位false數(shù)據(jù)類型的轉換null:在字符串環(huán)境下,轉換為“null”;數(shù)字環(huán)境下,轉換為0,布爾環(huán)境下,轉為falseNaN:在字符串環(huán)境下可以隱式轉換為“NaN”;布爾環(huán)境下,轉換為falseundefined:字符串環(huán)境下,轉換為“undefined”,數(shù)字環(huán)境下,轉為NaN,布爾下,轉為falsetrue:字符串轉為“true”,數(shù)字環(huán)境下轉為110.false:字符串轉為“false”,數(shù)字環(huán)境下轉為0數(shù)據(jù)類型的轉換2.顯式類型轉換在JavaScript中,可以使用Number()、Boolean()、String()函數(shù)來將數(shù)據(jù)類型轉換成數(shù)字型、布爾型、字符串型數(shù)字類型轉換成字符串型,可以將其與一個空字符串相連。var

s=123+””;字符串型轉換成數(shù)字型,可以將其減0var

s=“123”-0;字符串型或數(shù)字型轉換成布爾型,可以使用兩次!運算符var

s

=

“true”;

if(!!s){}常量1.整數(shù)常量浮點常量字符串常量布爾常量數(shù)組常量整數(shù)常量十進制整數(shù)123

0

123456789八進制整數(shù)01230234

0765十六進制整數(shù)0x123

0xaf

0xff浮點常量1.傳統(tǒng)記數(shù)法:2.科學1.2e3

1E41.2

233.12

.32:5.2e-2字符串常量字符串是由單引號或雙引號括起來的字符序列。注意:字符串常量必須寫在一行中

“Javascript”‘Javascript’“js’s

language”‘a”b’布爾常量布爾常量是比較簡單的一種常量,只有兩種值,一種是true,一種是false,在有些時候,JavaScript也可以把0和1分別看成false和true。數(shù)組常量數(shù)組名=[數(shù)組值1,數(shù)組值2,數(shù)組值3………]數(shù)組長度:所謂數(shù)組長度就是數(shù)組中包含多少個數(shù)據(jù)。數(shù)組下標:數(shù)組使用下標來獲取數(shù)組中的某個值。下標從0開始。數(shù)組中的元素:數(shù)組名[下標值]表達式與運算符表達式常量表達式變量表達式復合表達式操作數(shù)1.2

“str”

falsex

yx+

y 1

+

2 (x+y)-(1+2)x=100 x=12+23

x和常量12,23,100都是操作表達式與運算符3.運算符a.一元運算符

++

--b.二元運算符

+

-

*

/c.三元運算符

?:d.算術運算符

e.比較運算符

f.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論