一、 類與對象
在 JavaScript世界裡,關於面向對象第一個要澄清的概念就是類。對象都是由類來定義的,通過類來創建對象就是我們所熟悉的實例化。然而,在 JavaScript中別沒有真正的類,對象的定義就是對象自身。而 ECMA-262 干脆把這種妥協的方式稱作為對象的調和劑。為了方便理解,我通常把這個發揮類的作用的調和劑稱為類。
Javascript內置對象學習
全局屬性
Infinity 表示正無窮大的數值 NaN 非數字值 undefined 未定義的值 decodeURI() 對encodeURI()轉義的字符串解碼。 decodeURIComponent() 對encodeURIComponent()轉義的字符串解碼。 encodeURI() 返回參數的副本,其中某些字符被十六進制的轉義序列替換了, 建議使用encodeURIComponent()對字符串進行編碼。 encodeURIComponent() 返回參數的副本,其中某些字符被十六進制的轉義序列替換了。 escape() 用轉義序列替換某些字符來字符串編碼。 eval() 計算Javascript代碼串,返回結果。 isFinite() 檢驗一個值是否是無窮大的數字。 isNaN() 檢驗一個值是否是非數字的值。 parseFloat() 從字符串解析一個數字。 parseInt() 從字符串解析一個數字。 unescape() 對用escape()編碼的字符串解碼。
JavaScript內置對象
Object對象
constructor 對一個Javascript函數的引用,該函數是對象的構造函數。 hasOwnProperty() 檢查對象是否有局部定義的(非繼承的)、具有特定名字的屬性。 isPrototypeOf() 檢查對象是否是指定對象的原型。 propertyIsEnumerable() 檢查指定的屬性是否存在,以及是否能用for/in循環枚舉。 toLocaleString() 返回對象地方化的字符串表示。 toString() 返回對象的字符串表示。 valueOf() 返回對象的原始值(如果存在)。
Arguments對象(只在函數內部定義)
callee 對當前正在執行函數的引用。 length 傳遞給函數的實際參數個數。
Array對象
length
數組包含的元素的個數。
concat()
給數組添加元素(此操作原數組的值不變)。
join()
把數組中所有元素轉換成字符串,然後連接起來。
pop()
刪除並返回數組最後一個元素。
push()
把一個元素添加到數組的尾部,返回值為數組的新長度(Bug:ver1.2中,將返回數組最後一個元素)。
reverse()
在原數組上顛倒數組中元素的順序。
shift()
刪除並返回數組的頭部元素。
slice()
返回數組的一個子數組,該方法不修改原數組(Bug:在IE4中start不能為負數)。
sort()
從原數組上對數組進行排序。
splice()
插入,刪除,替換一個數組元素。
toLocalString()
把數組轉換成一個局部字符串。
toString()
把數組轉換成一個字符串。
unshift()
在數組頭部插入一個元素, 返回值為數組的新長度。
Date對象
Error對象
message
提供異常詳細信息的錯誤消息。
name
聲名異常類型的字符串。
toString()
返回一個表示Error對象的字符串。
子對象類型,指示具體的錯誤類型。
EvalError(執行錯誤)。
RangeError(在數字超出合法范圍時拋出)。
ReferenceError(在讀取不存在的變量時拋出)。
SyntaxError(拋出該錯誤用來通知語法錯)。
TypeError(當一個值的類型錯誤時,拋出該異常)。
URIError(由URI的編碼和解碼方法拋出)。
Function對象
arguments Arguments對象, 反對使用該屬性。 caller 對調用當前函數的Funciton對象的引用,反對使用該屬性。 length 在聲名函數時指定的命名參數個數。 prototype 一個對象,用於構造函數,這個對象定義的屬性和方法由構造函數創建的所有對象共享。 apply() 將函數作為指定對象的方法來調用,傳遞給它的是指定的參數數組。 call() 將函數作為指定對象的方法來調用,傳遞給它的是指定的參數。 toString() 返回函數的字符串表示。
Math對象
Math.E 常量e,自然對數的底數。 Math.LN10 10的自然對數。 Math.LN2 2的自然對數。 Math.LOG10E 以10為底的e的對數。 Math.LOG2E 以2為底的e的對數。 Math.PI 常量π。 Math.SQRT1_2 1/2的平方根。 Math.SQRT2 2的平方根。 abs() 靜態方法, 求絕對值。 acos() 靜態方法。 asin() 靜態方法。 acos() 靜態方法。 atan() 靜態方法。 atan2() 靜態方法, 計算X軸到一個點的角度。 ceil() 靜態方法, 對一個數上捨入。 cos() 靜態方法。 exp() 靜態方法, 計算e的指數。 floor() 靜態方法, 對一個數下捨入。 log() 靜態方法, 計算自然對數。 max() 靜態方法。 min() 靜態方法。 pow() 計算參數1的參數2次方。 radom() 靜態方法。 round() 靜態方法。 sin() 靜態方法。 sqrt() 靜態方法。 tan() 靜態方法。
Number對象
global 對象是否具有性質g。 ignoreCase 對象是否具有性質i。 lastIndex 上次匹配後的字符位置,用於一個字符串中進行多次匹配。 multiline 對象是否具有性質m。 source 正則表達式的源文本。 exec() 執行強大的、通用的模式匹配。 test() 檢測一個字符串是否含有某個模式。
RegExp對象
global 對象是否具有性質g。 ignoreCase 對象是否具有性質i。 lastIndex 上次匹配後的字符位置,用於一個字符串中進行多次匹配。 multiline 對象是否具有性質m。 source 正則表達式的源文本。 exec() 執行強大的、通用的模式匹配。 test() 檢測一個字符串是否含有某個模式。
詳細資料大家可以參考Javascript核心參考教程--RegExp對象
String對象
fromCharCode()
靜態方法, 用作為參數而傳遞的字符代碼創建一個新的字符串。
length
字符串的長度。
charAt()
抽取字符串中指定位置的字符。
charCodeAt()
返回字符串中指定位置的字符編碼。
concat()
把一個或多個值連接到字符串上。
indexOf()
在字符串中檢索一個字符或一個子串。
lastIndexOf()
在字符串中向後檢索一個字符或一個子串。
localeCompare()
用本地特定順序來比較兩個字符串。
match()
用正則表達式執行模式匹配。
replace()
用正則表達式執行查找、替換操作。
search()
檢索字符串中與正則表達式匹配的子串。
slice()
返回字符串的一個片斷或一個子串。
split()
把字符串分割成一個字符串數組,在指定的分界字符處或正則表達式處執行分割。
substring()
從字符串中抽取一個子串。
substr()
從字符串中抽取一個子串。
toLowerCase()
把字符串中所有字符轉換成小寫的,然後返回一個副本。
toString()
返回原始的字符串值。
toUpperCase()
把字符串中所有字符轉換成大寫的,然後返回一個副本。
valueOf()
返回原始字符串值。
除此之外,String 還有一些與HTML操作特定的方法,但是ECMAScript沒有標准化這些方法。
anchor() 在<a name=>環境中返回一個字符串的副本。 big() 在<big>環境中返回一個字符串的副本。 blink() 在<blink<環境中返回一個字符串的副本。 bold() 在<b>環境中返回一個字符串的副本。 indexOf() 在字符串中檢索一個字符或一個子串。 lastIndexOf() 在字符串中向後檢索一個字符或一個子串。 localeCompare() 用本地特定順序來比較兩個字符串。 match() 用正則表達式執行模式匹配。 fixed() 在<tt>環境中返回一個字符串的副本。 fontcolor() 在<font color=>環境中返回一個字符串的副本。 fontsize() 在<font size=>環境中返回一個字符串的副本。 italics() 在<i>環境中返回一個字符串的副本。 link() 在<a href=>環境中返回一個字符串的副本。 small() 在<small>環境中返回一個字符串的副本。 strike() 在<strike>環境中返回一個字符串的副本。 sub() 在<sub>環境中返回一個字符串的副本。 sup() 在<sup>環境中返回一個字符串的副本。
****************************************************************************************************************************************************************
JavaScript的內置對象,屬性集錦
用於包含JavaScript代碼.
屬性
LANGUAGE 定義腳本語言
SRC 定義一個URL用以指定以.JS結尾的文件
window對象
每個HTML文檔的頂層對象.
屬性
frames[] 子桢數組.每個子桢數組按源文檔中定義的順序存放.
feames.length 子桢個數.
self 當前窗口.
parent 父窗口(當前窗口是中一個子窗口).
top 頂層窗口(是所有可見窗口的父窗口).
status 浏覽器狀態窗口上的消息.
defaultStatus 當status無效時,出現在浏覽器狀態窗口上的缺省消息.
name 內部名,為由window.open()方法打開的窗口定義的名字.
方法
alert("message") 顯示含有給定消息的"JavaScript Alert"對話框.
confirm("message") 顯示含有給定消息的"Confirm"對話框(有一個OK按鈕和一個Cancel按鈕).如果用戶單擊OK返回true,否則返回false.
prompt("message") 顯示一個"prompt"對話框,要求用戶根據顯示消息給予相應輸入.
open("URL","name") 打開一個新窗口,給予一個指定的名字.
close() 關閉當前窗口.
frame對象
它是整個浏覽器窗口的子窗口,除了status,defaultStatus,name屬性外,它擁有window對象的全部屬性.
location對象
含有當前URL的信息.
屬性
href 整個URL字符串.
protocol 含有URL第一部分的字符串,如http:
host 包含有URL中主機名:端口號部分的字符串.如//www.onlyaa.com/song
hostname 包含URL中主機名的字符串.如http://www.onlyaa.com
port 包含URL中可能存在的端口號字符串.
pathname URL中"/"以後的部分.如~list/index.htm
hash "#"號(CGI參數)之後的字符串.
search "?"號(CGI參數)之後的字符串.
document對象
含有當前文檔信息的對象.
屬性
title 當前文檔標題,如果未定義,則包含"Untitled".
location 文檔的全URL.
lastModified 含有文檔最後修改日期.
referrer 調用者URL,即用戶是從哪個URL鏈接到當前頁面的.
bgColor 背景色(#xxxxxx)
fgColor 前景文本顏色.
linkColor 超鏈接顏色.
vlinkColor 訪問過的超鏈顏色.
alinkColor 激活鏈顏色(鼠標按住未放時).
forms[] 文檔中form對象的數組,按定義次序存儲.
forms.length 文檔中的form對象數目.
links[] 與文檔中所有HREF鏈對應的數組對象,按次序定義存儲.
links.length 文檔中HREF鏈的數目.
anchors[] 錨(...)數組,按次序定義存儲.
anchors.length 文檔中錨的數目.
方法
write("string") 將字符串突出給當前窗口.(字符串可以含有HTML標記)
writeln("string") 與write()類似,在結尾追加回車符,只在預定格式文本中生效.
clear() 清當前窗口.
close() 關閉當前窗口.
form對象
屬性
name 中的NAME屬性的字符串值.
method 中METHOD屬性的類值,"0"="GET" ,"1"="POST" .
action 中ACTION屬性的字符串值.
target 表格數據提交的目標,與標記中相應屬性一致.
elements[index] elements屬性包含form中的各個元素.
length 表格中的元素個數.
方法
submit() 提交表格.
事件處理器onSubmit() 用戶單擊一個定義好的按鈕提交form時運行的代碼.
text和textarea對象
屬性
name NAME屬性的字符串值.
value 域內容的字符串值.
defaultValue 域內容的初始字符串值.
方法
focus() 設置對象輸入焦點.
blur() 從對象上移走輸入焦點.
select() 選定對象的輸入區域.
事件處理器
onFocus 當輸入焦點進入時執行.
onBlur 當域失去焦點時執行.
onSelect 當域中有部分文本被選定時執行.
onChange 當域失去焦點且域值相對於onFocus執行有所改變時執行.
復選框(checkbox)對象
屬性
name NAME屬性的字符串值.
value 復選框內容的字符串值.如果設置了,則為"on",否則為"off".
checked 復選框內容的布爾值.如果設置了,則為true,否則為false .
defaultChecked 反映(CHECKED)屬性的布爾值(缺省狀態).
方法
click() 選定復選框,並使之狀態為"on".
事件處理器
onClick 當用戶單擊Checkbox時執行.
單選按鈕(radio)對象
屬性
name NAME屬性的字符串值.
length radio對象中單選按鈕的個數.
value VALUE屬性的字符串值.
checked 布爾值,按下為true,否則為false .
defaultChecked 反映CHECKED屬性值的布爾值.
方法
click() 選定單選按鈕.
事件處理器
onClick 當單選按鈕被選定時執行.
select對象
屬性
length select對象中對象的個數.
name 由NAME=屬性定義的select對象的內部名.
selectedIndex select對象中當前被選option的下標.
options 該屬性對應於在HTML中定義select對象時標記中的內容,它有如下屬性:
text 標記後的文本串.
value VALUE屬性的值,當Submit按鈕被按下時,該值被提交.
defaultSelected 反映標記的SELECTED屬性的布爾值.
selected 反映option的當前選擇狀態的布爾值.
事件處理器
onFocus 當輸入焦點進入域時執行.
onBlur 當域失去輸入焦點時執行.
onChange 當域失去焦點且如果域的值相對於onFocus執行時有所改變,則執行onChange.
Button對象
表格中有三種類型按鈕,由標記中的TYPE屬性定義:
.submit (type="SUBMIT")
.reset (type="RESET")
.custom (type="BUTTON")
所有按鈕對象都有如下成分:
屬性
value VALUE屬性的字符串值.
name NAME屬性的字符串值.
方法
click() 選定按鈕
事件處理器
onClick 當按鈕被單擊時執行.
submit和reset對象
屬性
value VALUE=屬性的內容.
name NAME=屬性的內容.
方法
click() 選定按鈕
事件處理器
onClick 當按鈕被單擊時執行.
password對象
屬性
defaultValue VALUE=屬性的內容.
name NAME=屬性的內容.
value 目前輸入password域的數據.
方法
focus() 將焦點帶入password域.
blur() 將焦點從password域移出.
select() 選定password域中的當前數據,以備修改.
navigator對象
該對象用於確定用戶訪問時使用的Navigator版本.
屬性
appCodeName 相對於用戶浏覽器的"codename"
appName 相對於用戶浏覽器的實際名字.
appVersion 相對於用戶浏覽器的版本號.
userAgent 該屬性反映用戶浏覽器的全部信息.
string對象
string對象為操作字符串的內容提供了很多方法.
屬性
length 字符串的長度,即字符串中字符的個數.
方法
big(),blink(),bold(),fixed(),italics(),small(),sub(),strike(),sup(),fontColor(color),fontSize(size)
以上方法為字符串增加相應的HTML標記.
charAt(index) 返回字符串中index處的字符.
indexOf(searchValue,[fromIndex]) 該方法在字符串中尋找第一次出現的searchValue.如果給定了fromIndex,則從字符串內該位置開始搜索,當searchValue找到後,返回該串第一個字符的位置.
lastIndexOf(searchValue,[fromIndex]) 從字符串的尾部向前搜索searchValue,並報告找到的第一個實例.
substring(indexA,indexB) 獲取自indexA到indexB的子串.
toLowerCase(),toUpperCase() 將字符串中所有字符全部轉換成大寫,小寫.
Date對象
要使用Date對象,必須先生成一個Date實例:
變量名=new Date();
方法
getDay(),getDate(),getHours(),getMinutes(),getMonth(),getSeconds(),getTime(), getTimeZoneOffset(),getYear()
還有setDay... ...
toGMTString() 用GMT格式返回當前時間. (Sun,12 Feb 1999 14:19:22 GMT)
toLocaleString 用locale格式返回當前時間. (03/11/99 14:19:22)
parse(date) 將普通date字符串轉換成豪秒形式,從而給setTime()做參數.
Math對象
屬性
LN10 (10的自然對數)
PI (3.1415926...)
SQRT1_2 (1/2的平方根)
方法
abs(x) 返回x的絕對值
acos(x) 返回x的arc cosine值
asin(x) 返回x的arc sin值
atan(x) 返回x的arc tangent值
ceil(x) 返回大於等於x的最小整數
cos(x) 返回x的cosine值
exp(x) 返回e的x次方
floor(x) 返回小於等於x的最大整數
log(x) 返回x的
max(x,y) 返回x,y中的大值
min(x,y) 返回x,y中的小值
pow(x,y) 返回x的y次方
round(x) 捨入到最近整數,(小於或等於0.5小數捨去)
sin(x) 返回x的sin值
sqrt(x) 返回x的平方根
tan(x) 返回x的tangent值
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!