本文轉載自:點擊打開鏈接
一.js的數據類型和變量
JavaScript 有六種數據類型。主要的類型有 number、string、object 以及 Boolean 類型,其他兩種類型爲 null 和 undefined。
String 字符串類型:字符串是用單引號或雙引號來說明的。(使用單引號來輸入包含引號的字符串。)如:“The cow jumped over the moon.”
數值數據類型:javascript 支持整數和浮點數。整數可以爲正數、0 或者負數;浮點數可以包含小數點、也可以包含一個 “e”(大小寫均可,在科學記數法中表示“10的冪”)、或者同時包含這兩項。
Boolean 類型:可能的 Boolean 值有 true 和 false。這是兩個特殊值,不能用作 1 和 0。
Undefined 數據類型:一個爲 undefined 的值就是指在變量被創建後,但未給該變量賦值以前所具有的值。
Null 數據類型:null 值就是沒有任何值,什麼也不表示。
object類型:除了上面提到的各種常用類型外,對象也是JavaScript中的重要組成部分,這部分將在後面章節詳細介紹。
在 JavaScript 中變量用來存放腳本中的值,這樣在需要用這個值的地方就可以用變量來代表,一個變量可以是一個數字,文本或其它一些東西。
JavaScript是一種對數據類型變量要求不太嚴格的語言,所以不必聲明每一個變量的類型,變量聲明儘管不是必須的,但在使用變量之前先進行聲明是一種好的習慣。可以使用 var 語句來進行變量聲明。如:var men = true; // men 中存儲的值爲 Boolean 類型。
變量命名:JavaScript 是一種區分大小寫的語言,因此將一個變量命名爲 computer 和將其命名爲 Computer是不一樣的。
另外,變量名稱的長度是任意的,但必須遵循以下規則:
1.第一個字符必須是一個字母(大小寫均可)、或一個下劃線(_)或一個美元符 ($)。
2.後續的字符可以是字母、數字、下劃線或美元符。
3.變量名稱不能是保留字。
二.js語句及語法
JavaScript所提供的語句分爲以下幾大類:
1.變量聲明,賦值語句:var。
語法如下: var 變量名稱 [=初始值]
例:var computer = 32 //定義computer是一個變量,且有初值爲32。
2.函數定義語句:function,return。
語法如下: function 函數名稱 (函數所帶的參數)
{
函數執行部分
}
return 表達式 //return語句指明將返回的值。
例:function square ( x )
{
return x*x
}
3.條件和分支語句:if...else,switch。
if...else語句完成了程序流程塊中分支功能:如果其中的條件成立,則程序執行緊接着條件的語句或語句塊;否則程序執行else中的語句或語句塊。 語法如下: if (條件)
{
執行語句1
}else{
執行語句2
}
例:if (result == true)
{
response = “你答對了!”
}else{
response = “你錯了!”
}
分支語句switch可以根據一個變量的不同取值採取不同的處理方法。
語法如下: switch (expression)
{
case label1: 語句串1;
case label2: 語句串2;
case label3: 語句串3;
...
default: 語句串3;
}
如果表達式取的值同程序中提供的任何一條語句都不匹配,將執行default 中的語句。
4. 循環語句:for, for...in,while,break,continue。
for語句的語法如下: for (初始化部分;條件部分;更新部分)
{
執行部分...
}
只要循環的條件成立,循環體就被反覆的執行。
for...in語句與for語句有一點不同,它循環的範圍是一個對象所有的屬性或是一個數組的所有元素。
for...in語句的語法如下: for (變量 in 對象或數組)
{
語句...
}
while語句所控制的循環不斷的測試條件,如果條件始終成立,則一直循環,直到條件不再成立。
語法如下: while (條件)
{
執行語句...
}
break語句結束當前的各種循環,並執行循環的下一條語句。
continue語句結束當前的循環,並馬上開始下一個循環。
5.對象操作語句:with,this,new。
with語句的語法如下:
with (對象名稱){
執行語句
}
作用是這樣的:如果你想使用某個對象的許多屬性或方法時,只要在with語句的()中寫出這個對象的名稱,然後在下面的執行語句中直接寫這個對象的屬性名或方法名就可以了。
new語句是一種對象構造器,可以用new語句來定義一個新對象。
語法是這樣的:新對象名稱= new 真正的對象名
譬如說,我們可以這樣定義一個新的日期對象: var curr= new Date(),然後,變量curr就具有了Date對象的屬性。
this運算符總是指向當前的對象。
6.註釋語句://,/*...*/。
//這是單行註釋
/*這可以多行註釋.... */
三.js對象的屬性及方法.
在JavaScript中是基於對象的編程,而不是完全的面向對象的編程。
那麼什麼是對象呢?如果你學過一些VB的編程,對這個名詞一定不會陌生。通俗的說,對象是變量的集合體,對象提供對於數據的一致的組織手段,描述了一類事物的共同屬性。
在JavaScript中,可以使用以下幾種對象:
1.由瀏覽器根據web頁面的內容自動提供的對象。
2.JavaScript的內置對象,如Date,Math等。
3.服務器上的固有對象。
4.用戶自定義的對象。
JavaScript中的對象是由屬性和方法兩個基本的元素的構成的。對象的屬性是指對象的背景色,長度,名稱等。對象的方法是指對屬性所進行的操作,就是一個對象自己所屬的函數,如對對象取整,使對象獲得焦點,使對象獲得個隨機數等等一系列操作。
舉個例子來說,將汽車看成是一個對象,汽車的顏色,大小,品牌等叫做屬性,而發動,剎車,拐彎等就叫做方法。
可以採用這樣的方法來訪問對象的屬性:對象名稱.屬性名稱,例:mycomputer.year=1996,mycomputer.owner = “me”。
可以採用這樣的方法,將對象的方法同函數聯繫起來:對象.方法名字=函數名字或對象.屬性.方法名,例:this.display=display,document.writeln(“this is method”)。
多看或多寫一些程序,就會理解對象的方法和屬性的含義了!
四.js事件的處理
事件是瀏覽器響應用戶交互操作的一種機制,JavaScript的事件處理機制可以改變瀏覽器響應用戶操作的方式,這樣就開發出具有交互性,並易於使用的網頁。
瀏覽器爲了響應某個事件而進行的處理過程,叫做事件處理。
事件定義了用戶與頁面交互時產生的各種操作,例如單擊超級連接或按鈕時,就產生一個單擊(click)操作事件。瀏覽器在程序運行的大部分時間都等待交互事件的發生,並在事件發生時,自動調用事件處理函數,完成事件處理過程。
事件不僅可以在用戶交互過程中產生,而且瀏覽器自己的一些動作也可以產生事件,例:當載入一個頁面時,就會發生load事件,卸載一個頁面時,就會發生unload事件等。
歸納起來,必需使用的事件有三大類:
1.引起頁面之間跳轉的事件,主要是超連接事件。
2.事件瀏覽器自己引起的事件。
3.事件在表單內部同界面對象的交互。
另:
Javascript 基礎
一、 變量
var myBook;
myBook=5;
變量名要求以字母或 _ 打頭,不能含有空格
常見的類型有:字符串,數值,布爾和對象類型。
var num=6
b=(3>5)
false true
二、 表達式與操作符
1、 比較操作符
== != > < >= <=
2、 運算操作符
+ - * / % ++ --
3、 邏輯操作符
與&& , 或 || , 非 !
4、 位操作符
& | ^(異或) ~ << >> >>>(填0右移操作符)
5、 賦值操作符
=
+= -= *= /=
&= |= ^=
<<= >>= >>>=
6、 其它操作符
條件操作符:(條件)?值1:值2 a=5 b=6 c=(a>b)?a-b:a+b
new操作符 var
com=new Array("Zhang","Li","wang","Chen")
com[2]
delete 操作符 delete com[2]
7、
三、 語句
1、 條件語句
(1) if……else
if (mark>60)
s="pass"
else
s="fail"
(2)tch case 標籤1:代碼塊1;break;
case 標籤2:代碼塊2;break;
…………
case 標籤n:代碼塊n;break;
default: 缺省代碼塊;
}
(3)
2、 循環語句
(1) for 語句
for(初始表達式;循環條件;遞增表達式)
{ 代碼塊 }
(2) while 語句
while(循環條件)
{代碼塊}
(3) do……while語句
do{
代碼塊
} while(循環條件)
(4) label語句
label:代碼塊
(5) break語句
跳出循環語句或tch
break label 跳出label標識的代碼塊
(6)
3、 其他語句
(1) for……in語句 [forin.htm]
for (變量 in 對象) {
代碼塊 }
(2) with(對象){
代碼塊 }
(3) 註釋
// 註釋一行 /* */
(4) return
4、
四、 函數
1、 函數的定義
function 函數名(參數列表)
{ 代碼塊
}
-- 作者:111
-- 發佈時間:2004-12-3 1:31:00
--
2、 函數的調用
函數名(參數列表)
3、 javascript 的全局函數
(1) eval(字符串)
執行該字符串
(2) parseInt(字符串,[基數]) parseFloat(字符串)
var s="3.14"
var j=parseInt(s)
var k=parseFloat(s)
parseInt("2B",16)=
(3) isNaN(表達式) :不是數字
(4) Number(對象)和 String(對象)
Var n=new Number(20)
document.write(n.toString(16))
(5) Escape(字符串)和unescape(字符串)將消息串格式轉換爲ASC碼格式
4、 方法
(1) 滾動窗口scroll()
scroll(x,y):移至窗口某一點,左上角爲0,0 [winscroll.htm]
(2) 設置延遲setTimeout("表達式",時間) 時間:以毫秒爲單位
(3) 清除延遲clearTimeout("延遲號")
如:id=setTimeout("disp()",1000)
clearTimeout(id)
(4)
五、 Javascript 中的對象
1、 建立自定義對象
方法1:對象={屬性1:屬性值1,屬性2:屬性值2……屬性n:屬性值n}
方法2:先定義構造函數,再new創建對象實例。
如: function car(thecolor,thenumber,thewheels)
{ this.color=thecolor;
this.number=thenumber;
this.wheels=thewheels; }
var mycar=new car("RED","13245",4);
2、 定義對象的方法 [oop.htm]
function ReportInfo( )
{ var information=new string;
information="color:"+this.color+"<BR>";
information+="Number:"+this.Number+"<BR>";
information+="Wheels"+this.wheels;
window.document.write(information);
}
3、 javascript核心語言對象
(1) 數組對象(Array)
建立數組:var st=new Array("zhang","wang","li","chen");
var st1=new Array(4)
訪問數組元素: st[2]
數組對象的屬性 length (長度) [forin.htm]
方法 sort( ) 按ASCII碼排序 sort([比較函數名]) [sort.htm]
比較函數返回值(a與b比較) <0 b排在a 的前面
=0 保持原來次序
>0 a排在b的前面
reverse( ) 元素顛倒順序
join(分隔符) 轉換成字符串
(2) 字符串對象(String)
屬性: length
方法:toUpperCase() 轉換爲大寫字母
toLowerCase() 轉換爲小寫字母
indexOf(字符串,起始位置) 返回子字符串在字符串中的位置,若沒有,則爲-1
LastIndexOf(字符串,起始位置) 返回子字符串在字符串中最後的位置
charAt(位置) 返回字符串中下標位置的字母
substring(位置1,位置2)返回位置1,位置2間字符串
split(分界符) 按分界符的分解成數組元素
以下的爲格式化字符串方法 [str.htm]
big() blink() bold() fixed() fontcolor() fontsize() italics() small()
strike() sub() sup()
(3) 日期對象(Date)
創建日期對象
var 對象名稱=new Date (參數)
var theDate=new Date( )
var theDate=new Date( 1999,1,1)
方法:getYear( )
getMonth()
getDate( )
getHours( )
getMinutes( )
getSeconds( )
setYear (年份)
setMonth(月份)
setDate(日期)
setHours(小時數)
setMinutes(分鐘數)
setSeconds(秒數)
getTime(毫秒數) 獲得1970年1月1日0時0分0秒開始的豪秒
setTime(毫秒數)
(4) 數學對象(Math)
屬性: PI 圓周率 3.14159265
SQRT2 2的平方根 1.414
LN2 2的自然對數 0.693147
E 2.718281828459
LN10 10的自然對數 2.302585
LOG2E 以2爲底E的對數 1.442695
LOG10E 以10爲底E的對數 0.4342944819
SQRT1-2 0.5的平方根 0.7071
方法:min(值1,值2)
max(值1,值2)
round(數值) 四捨五入
ceil (數值) 返回>=參數的最小整數 負值取0(向上取整)
floor (數值) 截尾取整(向下取整)
random() 0-1的隨機數
sqrt(數值) 返回數值的平方根
abs(數值) 取絕對值
acos (數值) arccos 反餘弦
asin(數值) 反正弦
atan(數值) 反正切
cos(數值) 餘弦
sin(數值) 正弦
tan(數值) 正切
atan(x,y) 計算極角, 夾在X正半軸與x,y間的角
pow(x,y) X的Y次冪
log(x) x的自然對數
exp(x) E的X次方
希望可以幫到志同道合的朋友