中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

Prototype 學(xué)習(xí) 工具函數(shù)學(xué)習(xí)($方法)

$
$$
$A
$F
$H
$R
$w
Try.these
document.getElementsByClassName
$方法――被成為瑞士軍刀(Swiss Army knife)
If provided with a string, returns the element in the document with matching ID; otherwise returns the passed element. Takes in an arbitrary number of arguments. All elements returned by the function are extended with Prototype DOM extensions.
復(fù)制代碼 代碼如下:
function $(element) {
if (arguments.length > 1) {
for (var i = 0, elements = [], length = arguments.length; i < length;
i++)
elements.push($(arguments[i]));
return elements;
}
if (Object.isString(element))
element = document.getElementById(element);
return Element.extend(element);
}

首先檢查傳進(jìn)來的參數(shù)長度:

如果長度等于1,則判斷傳進(jìn)來的參數(shù)是否為String,如果傳進(jìn)來的是String,則調(diào)用getElementById方法取得相應(yīng)的對象,最后讓返回的對象繼承Element的所有方法,這樣返回的對象將可以直接調(diào)用Element對象里面定義的各種方法。例如
復(fù)制代碼 代碼如下:
// Note quite OOP-like...
Element.hide('itemId');
// A cleaner feel, thanks to guaranted extension
$('itemId').hide();

如果長度大于1,則遞歸調(diào)用$方法(elements.push($(arguments[i]));)就是說傳進(jìn)來的參數(shù)可以是多維數(shù)組:
$(['A','B',['C','D',['E','F']]]),當(dāng)然了返回的也是對象數(shù)組了。
如果長度等于0,返回undefined,即直接調(diào)用alert($())
詳細(xì)看一下Object.isString方法:
復(fù)制代碼 代碼如下:
function isString(object) {
return getClass(object) === "String";
}

//=====> getClass()

function getClass(object) {
return Object.prototype.toString.call(object)
.match(/^/[object/s(.*)/]$/)[1];
}

主要是通過Object對象的內(nèi)部方法getClass來確定返回的對象是什么類型,在getClass中調(diào)用了Object的toString方法,然后通過正則表達(dá)式取出表示具體對象的字符串

Object.prototype.toString.call("2222") 返回"[object String]" 取得"String"

Object.prototype.toString.call(2222) 返回"[object Number]" 取得"Number"



Object.prototype.toString.call(/^$/) 返回"[object RegExp]" 取得"RegExp"

這里為什么要用Object的toString方法呢,因為如果直接調(diào)用"2222".toString()將返回"2222",也就是說從Object繼承而來的對象,重寫了toStirng方法,所以這里要調(diào)用Object的toString才行。

JavaScript技術(shù)Prototype 學(xué)習(xí) 工具函數(shù)學(xué)習(xí)($方法),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲精品乱码久久久久久按摩观 | 久久婷婷麻豆国产91天堂 | 国产成人精品a视频一区www | 国产乱码精品一区二区三区五月婷 | 日日爱视频 | 亚洲成人精品 | 超碰97免费观看 | 久久九 | 国产91丝袜在线播放 | 国产精品乱码一区二三区小蝌蚪 | 久久久久久久国产精品影院 | 视频一区二区在线 | 性一爱一乱一交一视频 | 澳门永久av免费网站 | 九九99九九精彩46 | 天天综合久久 | 日韩欧美在线不卡 | 99视频 | 欧美激情99 | 91在线精品一区二区 | 国产精品一区二区久久久久 | 国产在线精品一区二区 | 国产精品毛片一区二区三区 | 真人女人一级毛片免费播放 | av免费成人 | 久久久亚洲 | 国产精品色 | 粉嫩一区二区三区性色av | 99精品免费在线观看 | 久久久爽爽爽美女图片 | av天天看 | 午夜在线免费观看视频 | 亚洲一区免费 | 久久婷婷麻豆国产91天堂 | 毛片视频网址 | 日韩伦理一区二区 | 精品亚洲一区二区 | 亚洲国产精品久久久 | 福利国产 | 天天综合天天 | 亚洲精品色 |