JavaScipt對(duì)象的基本知識(shí)第2/2頁
更新時(shí)間:2008年01月16日 20:38:22 作者:
JavaScipt對(duì)象的基本知識(shí)
屬性
E 返回常數(shù) e (2.718281828...)。
LN2 返回 2 的自然對(duì)數(shù) (ln 2)。
LN10 返回 10 的自然對(duì)數(shù) (ln 10)。
LOG2E 返回以 2 為低的 e 的對(duì)數(shù) (log2e)。
LOG10E 返回以 10 為低的 e 的對(duì)數(shù) (log10e)。
PI 返回π(3.1415926535...)。
SQRT1_2 返回 1/2 的平方根。
SQRT2 返回 2 的平方根。
方法
abs(x) 返回 x 的絕對(duì)值。
acos(x) 返回 x 的反余弦值(余弦值等于 x 的角度),用弧度表示。
asin(x) 返回 x 的反正弦值。
atan(x) 返回 x 的反正切值。
atan2(x, y) 返回復(fù)平面內(nèi)點(diǎn)(x, y)對(duì)應(yīng)的復(fù)數(shù)的幅角,用弧度表示,其值在 -π 到 π 之間。
ceil(x) 返回大于等于 x 的最小整數(shù)。
cos(x) 返回 x 的余弦。
exp(x) 返回 e 的 x 次冪 (ex)。
floor(x) 返回小于等于 x 的最大整數(shù)。
log(x) 返回 x 的自然對(duì)數(shù) (ln x)。
max(a, b) 返回 a, b 中較大的數(shù)。
min(a, b) 返回 a, b 中較小的數(shù)。
pow(n, m) 返回 n 的 m 次冪 (nm)。
random() 返回大于 0 小于 1 的一個(gè)隨機(jī)數(shù)。
round(x) 返回 x 四舍五入后的值。
sin(x) 返回 x 的正弦。
sqrt(x) 返回 x 的平方根。
tan(x) 返回 x 的正切。
Date 日期對(duì)象。這個(gè)對(duì)象可以儲(chǔ)存任意一個(gè)日期,從 0001 年到 9999 年,并且可以精確到毫秒數(shù)(1/1000 秒)。在內(nèi)部,日期對(duì)象是一個(gè)整數(shù),它是從 1970 年 1 月 1 日零時(shí)正開始計(jì)算到日期對(duì)象所指的日期的毫秒數(shù)。如果所指日期比 1970 年早,則它是一個(gè)負(fù)數(shù)。所有日期時(shí)間,如果不指定時(shí)區(qū),都采用“UTC”(世界時(shí))時(shí)區(qū),它與“GMT”(格林威治時(shí)間)在數(shù)值上是一樣的。
定義一個(gè)日期對(duì)象:
var d = new Date;
這個(gè)方法使 d 成為日期對(duì)象,并且已有初始值:當(dāng)前時(shí)間。如果要自定初始值,可以用:
var d = new Date(99, 10, 1); //99 年 10 月 1 日
var d = new Date('Oct 1, 1999'); //99 年 10 月 1 日
等等方法。最好的方法就是用下面介紹的“方法”來嚴(yán)格的定義時(shí)間。
方法
以下有很多“g/set[UTC]XXX”這樣的方法,它表示既有“getXXX”方法,又有“setXXX”方法?!癵et”是獲得某個(gè)數(shù)值,而“set”是設(shè)定某個(gè)數(shù)值。如果帶有“UTC”字母,則表示獲得/設(shè)定的數(shù)值是基于 UTC 時(shí)間的,沒有則表示基于本地時(shí)間或?yàn)g覽期默認(rèn)時(shí)間的。
如無說明,方法的使用格式為:“<對(duì)象>.<方法>”,下同。
g/set[UTC]FullYear() 返回/設(shè)置年份,用四位數(shù)表示。如果使用“x.set[UTC]FullYear(99)”,則年份被設(shè)定為 0099 年。
g/set[UTC]Year()返回/設(shè)置年份,用兩位數(shù)表示。設(shè)定的時(shí)候?yàn)g覽器自動(dòng)加上“19”開頭,故使用“x.set[UTC]Year(00)”把年份設(shè)定為 1900 年。
g/set[UTC]Month()返回/設(shè)置月份。
g/set[UTC]Date()返回/設(shè)置日期。
g/set[UTC]Day()返回/設(shè)置星期,0 表示星期天。
g/set[UTC]Hours()返回/設(shè)置小時(shí)數(shù),24小時(shí)制。
g/set[UTC]Minutes()返回/設(shè)置分鐘數(shù)。
g/set[UTC]Seconds()返回/設(shè)置秒鐘數(shù)。
g/set[UTC]Milliseconds()返回/設(shè)置毫秒數(shù)。
g/setTime() 返回/設(shè)置時(shí)間,該時(shí)間就是日期對(duì)象的內(nèi)部處理方法:從 1970 年 1 月 1 日零時(shí)正開始計(jì)算到日期對(duì)象所指的日期的毫秒數(shù)。如果要使某日期對(duì)象所指的時(shí)間推遲 1 小時(shí),就用:“x.setTime(x.getTime() + 60 * 60 * 1000);”(一小時(shí) 60 分,一分 60 秒,一秒 1000 毫秒)。
getTimezoneOffset() 返回日期對(duì)象采用的時(shí)區(qū)與格林威治時(shí)間所差的分鐘數(shù)。在格林威治東方的市區(qū),該值為負(fù),例如:中國時(shí)區(qū)(GMT+0800)返回“-480”。
toString() 返回一個(gè)字符串,描述日期對(duì)象所指的日期。這個(gè)字符串的格式類似于:“Fri Jul 21 15:43:46 UTC+0800 2000”。
toLocaleString() 返回一個(gè)字符串,描述日期對(duì)象所指的日期,用本地時(shí)間表示格式。如:“2000-07-21 15:43:46”。
toGMTString() 返回一個(gè)字符串,描述日期對(duì)象所指的日期,用 GMT 格式。
toUTCString() 返回一個(gè)字符串,描述日期對(duì)象所指的日期,用 UTC 格式。
parse() 用法:Date.parse(<日期對(duì)象>);返回該日期對(duì)象的內(nèi)部表達(dá)方式。
全局對(duì)象
全局對(duì)象從不現(xiàn)形,它可以說是虛擬出來的,目的在于把全局函數(shù)“對(duì)象化”。在 Microsoft JScript 語言參考中,它叫做“Global 對(duì)象”,但是引用它的方法和屬性從來不用“Global.xxx”(況且這樣做會(huì)出錯(cuò)),而直接用“xxx”。
屬性
NaN 一早就說過了。
方法
eval() 把括號(hào)內(nèi)的字符串當(dāng)作標(biāo)準(zhǔn)語句或表達(dá)式來運(yùn)行。
isFinite() 如果括號(hào)內(nèi)的數(shù)字是“有限”的(介于 Number.MIN_VALUE 和 Number.MAX_VALUE 之間)就返回 true;否則返回 false。
isNaN() 如果括號(hào)內(nèi)的值是“NaN”則返回 true 否則返回 false。
parseInt() 返回把括號(hào)內(nèi)的內(nèi)容轉(zhuǎn)換成整數(shù)之后的值。如果括號(hào)內(nèi)是字符串,則字符串開頭的數(shù)字部分被轉(zhuǎn)換成整數(shù),如果以字母開頭,則返回“NaN”。
parseFloat() 返回把括號(hào)內(nèi)的字符串轉(zhuǎn)換成浮點(diǎn)數(shù)之后的值,字符串開頭的數(shù)字部分被轉(zhuǎn)換成浮點(diǎn)數(shù),如果以字母開頭,則返回“NaN”。
toString() 用法:<對(duì)象>.toString();把對(duì)象轉(zhuǎn)換成字符串。如果在括號(hào)中指定一個(gè)數(shù)值,則轉(zhuǎn)換過程中所有數(shù)值轉(zhuǎn)換成特定進(jìn)制。
escape() 返回括號(hào)中的字符串經(jīng)過編碼后的新字符串。該編碼應(yīng)用于 URL,也就是把空格寫成“%20”這種格式。“+”不被編碼,如果要“+”也被編碼,請(qǐng)用:escape('...', 1)。
unescape() 是 escape() 的反過程。解編括號(hào)中字符串成為一般字符串。
函數(shù)函數(shù)的定義
所謂“函數(shù)”,是有返回值的對(duì)象或?qū)ο蟮姆椒ā?nbsp;
函數(shù)的種類
常見的函數(shù)有:構(gòu)造函數(shù),如 Array(),能構(gòu)造一個(gè)數(shù)組;全局函數(shù),即全局對(duì)象里的方法;自定義函數(shù);等等。
自定義函數(shù)
定義函數(shù)用以下語句:
function 函數(shù)名([參數(shù)集]) {
...
[return[ <值>];]
...
}
其中,用在 function 之后和函數(shù)結(jié)尾的大括號(hào)是不能省去的,就算整個(gè)函數(shù)只有一句。
函數(shù)名與變量名有一樣的起名規(guī)定,也就是只包含字母數(shù)字下劃線、字母排頭、不能與保留字重復(fù)等。
參數(shù)集可有可無,但括號(hào)就一定要有。
參數(shù) 是函數(shù)外部向函數(shù)內(nèi)部傳遞信息的橋梁,例如,想叫一個(gè)函數(shù)返回 3 的立方,你就要讓函數(shù)知道“3”這個(gè)數(shù)值,這時(shí)候就要有一個(gè)變量來接收數(shù)值,這種變量叫做參數(shù)。
參數(shù)集是一個(gè)或多個(gè)用逗號(hào)分隔開來的參數(shù)的集合,如:a, b, c。
函數(shù)的內(nèi)部有一至多行語句,這些語句并不會(huì)立即執(zhí)行,而只當(dāng)有其它程序調(diào)用它時(shí)才執(zhí)行。這些語句中可能包含“return”語句。在執(zhí)行一個(gè)函數(shù)的時(shí)候,碰到 return 語句,函數(shù)立刻停止執(zhí)行,并返回到調(diào)用它的程序中。如果“return”后帶有<值>,則退出函數(shù)的同時(shí)返回該值。
在函數(shù)的內(nèi)部,參數(shù)可以直接當(dāng)作變量來使用,并可以用 var 語句來新建一些變量,但是這些變量都不能被函數(shù)外部的過程調(diào)用。要使函數(shù)內(nèi)部的信息能被外部調(diào)用,要么使用“return”返回值,要么使用全局變量。
全局變量 在 Script 的“根部”(非函數(shù)內(nèi)部)的“var”語句所定義的變量就是全局變量,它能在整個(gè)過程的任意地方被調(diào)用、更改。
例
function addAll(a, b, c) {
return a + b + c;
}
var total = addAll(3, 4, 5);
這個(gè)例子建立了一個(gè)叫“addAll”的函數(shù),它有 3 個(gè)參數(shù):a, b, c,作用是返回三個(gè)數(shù)相加的結(jié)果。在函數(shù)外部,利用“var total = addAll(3, 4, 5);”接收函數(shù)的返回值。
更多的時(shí)候,函數(shù)是沒有返回值的,這種函數(shù)在一些比較強(qiáng)調(diào)嚴(yán)格的語言中是叫做“過程”的,例如 Basic 類語言的“Sub”、Pascal 語言的“procedure”。
屬性
arguments 一個(gè)數(shù)組,反映外部程序調(diào)用函數(shù)時(shí)指定的參數(shù)。用法:直接在函數(shù)內(nèi)部調(diào)用“arguments”。
您可能感興趣的文章:
- 解析Java的JNI編程中的對(duì)象引用與內(nèi)存泄漏問題
- Java中典型的內(nèi)存泄露問題和解決方法
- Java中內(nèi)存分配的幾種方法
- 詳細(xì)介紹Java內(nèi)存泄露原因
- 基于Java內(nèi)存溢出的解決方法詳解
- 深入分析Java內(nèi)存區(qū)域的使用詳解
- java 序列化對(duì)象 serializable 讀寫數(shù)據(jù)的實(shí)例
- 深入理解Java對(duì)象的序列化與反序列化的應(yīng)用
- 深入JAVA對(duì)象深度克隆的詳解
- 深入Java對(duì)象的地址的使用分析
- 解析Java程序中對(duì)象內(nèi)存的分配和控制的基本方法
相關(guān)文章
JavaScript初學(xué)者建議:不要去管瀏覽器兼容
如果可以回到過去的話,我會(huì)告訴自己這句話:初學(xué)JavaScript的時(shí)候無視DOM和BOM的兼容性,先了解一些基礎(chǔ)知識(shí)最后再考慮兼容性2014-02-02JavaScript中的勻速運(yùn)動(dòng)和變速(緩沖)運(yùn)動(dòng)詳細(xì)介紹
一個(gè)div的運(yùn)動(dòng)其實(shí)就是它與瀏覽器邊框的距離在變動(dòng)。如果他變化的速率一定,那就是勻速運(yùn)動(dòng);如果變化的速率不一定,那么就是變速運(yùn)動(dòng)2012-11-11幾種經(jīng)典排序算法的JS實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄獛追N經(jīng)典排序算法的JS實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-03-03解析js如何獲取當(dāng)前url中的參數(shù)值并復(fù)制給input
本篇文章是對(duì)js獲取當(dāng)前url中的參數(shù)值并復(fù)制給input的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06Javascript call和apply區(qū)別及使用方法
JavaScript中通過call或者apply用來代替另一個(gè)對(duì)象調(diào)用一個(gè)方法,將一個(gè)函數(shù)的對(duì)象上下文從初始的上下文改變?yōu)橛?thisObj 指定的新對(duì)象2013-11-11