前端基本功-JS/DOM

?前言,對于前端基礎的部分認識了解,我是個小白!

一,對象

(1)創建空白對象:var ?obj ?= ?new ?Object();

(2)構造函數(就是為了創建對象實例)

1,可以創建對象實例的函數。

2,區別與普通函數,首字母大寫。

(3)This:this只出現在函數中。

誰調用函數,this就指的是誰。

new People():? ?People中的this代指被創建的對象實例。

new:1.開辟內存空間,存儲新創建的對象( new Object() )

2.把this設置為當前對象

3.執行內部代碼,設置對象屬性和方法

4.返回新創建的對象十進制的值=位值*進制(位數-1) +位值*進制(位數-1) +位值*進制(位數-1)

(4)對象字面量JSON

var obj = {aaa: 111}; var json = {“aaa”:111};

對象字面量定義方法和json很像,只有一點不同,json的key要求必須加“”;

json組成:Var json = {“aaa”: 1,“bbb”: 2,“ccc”: 3,“ddd”: 4}

Json由{}和key:value以及逗號組成,三部分。(只有一個鍵值對key:value時,可以沒有逗號)

for...in...:Var json = {“aaa”: 1,“bbb”: 2,“ccc”: 3,“ddd”: 4}

for(var key in json){

//key代表aaa,bbb.....等

//json[key]代表1,2,3....等

}

構造函數的原理

function ?Num(aaa){

this["[[PrimitiveValue]]"] = num/1;

return ?aaa/1;

}

二,流程結構

分為三類:順序結構,選擇結構,循環結構。

順序結構:按照解決問題的順序寫出相應的語句就行,它的執行順序是自上而下,依次執行。

選擇結構:1,丟棄小數部分,保留整數部分

2,向上取整,有小數就整數部分加

3,四舍五入

4,向下取整

循環結構:1,遍歷數組首選for循環,簡單循環使用for。

2,而while循環強調,不記循環次數(不知道循環多少次),首選while。

3,最后do...while循環強調,無論怎樣,至少執行一次是,使用do...while。

(1)for循環

1,執行流程

for (變量;條件1;條件2){ 執行程序 }

執行過程:變量->條件1->執行程序->條件2->條件1->執行程序.....

直到條件1不成立,跳出循環。

2,三個表達式均為可選,但是必須寫分號。(for(){程序}? ? ?死循環;)

(2)while循環

語法規則:

var i = 0;

while(i<10){程序1;i++};

可以使用死循環和break連用。

While(true)(程序1; if(條件1){break;})

(4)do...while循環(一定會執行一次do中的程序)

var i = 0;

Do{

程序1;

i++;

}while(1<10);

事件:js是一門以事件驅動為核心的語言。事件的三要素是事件源,事件,事件驅動程序(獲取事件源,綁定事件,書寫事件驅動程序)

HTML的組成部分為節點(Node):在HTML當中一切都是節點……

由結構圖中我們可以看到,整個文檔就是一個文檔節點。

每一個HMTL標簽都是一個元素節點(標簽)。

標簽中的文字則是文字節點。(文本)

標簽的屬性是屬性節點。(屬性)

操作節點,找到該元素,通過節點id找到HTML元素,通過節點標簽名找到HTML元素,通過節點類名找到HTML元素。(節點的訪問關系都是屬性。節點的操作都是函數或者方法)

節點:

父節點?:調用者就是節點。一個節點只有一個父節點。調用方式就是節點.parentNode.

兄弟節點:Sibling就是兄弟的意思;Next:下一個的意思;Previous:前一個的意思;nextSibling:調用者是節點。

單個子節點:

firstChild:調用者是父節點。IE678中指第一個子元素節點(標簽)。在火狐谷歌IE9+以后都指的是第一個節點(包括空文檔和換行節點)。firstElementChild:在火狐谷歌IE9都指的第一個元素節點。第一個子節點=父節點.firstElementChild || 父節點.firstChild。lastChild:調用者是父節點。IE678中指最后一個子元素節點(標簽)。在火狐谷歌IE9+以后都指的是最后一個節點(包括空文檔和換行節點)。lastElementChild:在火狐谷歌IE9都指的最后一個元素節點。第一個子節點=父節點.lastElementChild|| 父節點.lastChild。

所有子節點:

childNodes:它是標準屬性,它返回指定元素的子元素集合,包括HTML節點,所有屬性,文本節點 ??(他還是W3C的親兒子 )。火狐谷歌等高本版會把換行也看做是子節點。nodeType==1時才是元素節點(標簽)。children:非標準屬性,它返回指定元素的子元素集合。

但它只返回HTML節點,甚至不返回文本節點,雖然不是標準的DOM屬性,但它和innerHTML方法一樣,得到了幾乎所有瀏覽器的支持。children在IE6/7/8中包含注釋節點。在IE678中,注釋節點不要寫在里面。

創建節點:使用方法是這樣document.createElement();

新的標簽(節點)= document.createElement(“標簽名”);

插入節點(使用節點):使用方法:父節點.appendChild();父節點.appendChild(新節點); 父節點的最后插入一個新節點。使用方法:父節點.insertBefore(要插入的節點,參考節點);父節點.insertBefore(新節點,參考節點)在參考節點前插入;如果參考節點為null,那么他將在節點最后插入一個節點。

刪除節點:用法:用父節點刪除子節點。父節點.removeChild(子節點);必須制定要刪除的子節點

節點自己刪除自己:不知道父級的情況下,可以這么寫:node.parentNode.removeChild(node)

復制節點:想要復制的節點調用這個函數cloneNode(),得到一個新節點。 方法內部可以傳參,入股是true,深層復制,如果是false,只復制節點本身。新節點=要復制的節點.cloneNode(參數) ; 參數可選復制節點。用于復制節點,接受一個布爾值參數,true表示深復制(復制節點及其所有子節點), false 表示淺復制(復制節點本身,不復制子節點)

節點屬性:獲取:getAttribute(名稱)。設置:setAttribute(名稱, 值)刪除:removeAttribute(名稱);注意:IE6、7不支持。調用者:節點。有參數。沒有返回值。每一個方法意義不同。

三,DOM

dom元素:DOM就是html文檔的模型抽象。數據以樹的形式在內存中排列。節點就是DOM的組成。是一個對象,有屬性和方法。獲取方式有很多種。節點分為元素節點(標簽),文本節點,屬性節點。區分方法:nodeType: 1是標簽,2是屬性,3是文本。


1,解析過程:HTML加載完畢,渲染引擎會在內存中把HTML文檔,生成一個DOM樹,getElementById是獲取內中DOM上的元素節點。然后操作的時候修改的是該元素的屬性。

2,DOM(文檔對象模型)

dom是一個復合數據類型

3,DOM數據結構(樹圖)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,835評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,676評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,730評論 0 380
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,118評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,873評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,266評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,330評論 3 443
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,482評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,036評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,846評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,025評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,575評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,279評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,684評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,953評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,751評論 3 394
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,016評論 2 375

推薦閱讀更多精彩內容