JavaScript基礎之更新DOM

2021-08-08 07:14:27 字數 675 閱讀 2484

一種是修改innerhtml屬性,這個方式非常強大,不但可以修改乙個dom節點的文字內容,還可以直接通過html片段修改dom節點內部的子樹:

// 獲取"p-id">...

var p = document.getelementbyid('p-id');

// 設定文字為abc:

p.innerhtml = 'abc'; // "p-id">abc

// 設定html:

p.innerhtml = 'abc red xyz';

// ...

的內部結構已修改

用innerhtml時要注意,是否需要寫入html.如果寫入的字串是通過網路拿到了,要注意對字元編碼來避免xss攻擊。

第二種是修改innertext或者textcontent屬性,這樣可以自動對字串進行html編碼,保證無法設定任何html標籤:

// 獲取"p-id">...

var p = document.getelementbyid('p-id');

// 設定文字:

p.innertext = '';

// html被自動編碼,無法設定乙個

兩者的區別在於讀取屬性時,innertext不返回隱藏元素的文字,而textcontent返回所有文字。

JavaScript基礎語言知識(動態更新)

if a 兩者是等價的效果 if a null typeof a undefined a 嚴格比較,只要型別不匹配就返回false。js換了行不需要分號也算結束語句,所以單引號雙引號裡的資料只能在一行寫完。js只使用字元的字串,單引號和雙引號沒有區別 一句話看似很沒茅台,對於新手可能就是乙個坑 牢記...

javascript之閉包基礎

閉包基礎 function f1 return f2 閉包 能夠訪問乙個函式內部變數的函式 f2就是乙個閉包 var f f1 呼叫f1之後返回閉包函式 f 1 f 2 原因 閉包函式引用了外部函式的變數,導致外部函式變數不會立即被 閉包延長了函式內部變數的生命週期 注意 函式的引數也是區域性變數,...

JavaScript基礎之標準物件

為了區分物件的型別,我們用typeof操作符獲取物件的型別,它總是返回乙個字串.總結一下有這麼幾條規則需要遵守 1.不要使用new number new boolean new string 建立包裝物件 2.用parseint 或者parsefloat 來轉換任意型別到number 3.用stri...