包裝類 Date Math 字符串的相關的方法 正則表達式 DOM DOM查詢


包裝類

在JS中為我們提供了三個包裝類:
String() Boolean() Number()
通過這三個包裝類可以創建基本數據類型的對象
例子:

1
2
3
var num = new Number(2); 
var str = new String("hello");
var bool = new Boolean(true);

 

但是在實際應用中不會這樣使用。

當我們去操作一個基本數據類型的屬性和方法時,
解析器會臨時將其轉換為對應的包裝類,然后再去操作屬性和方法,
操作完成以后再將這個臨時對象進行銷毀。

Date

日期的對象,在JS中通過Date對象來表示一個時間

創建對象

創建一個當前的時間對象

1
var d = new Date();

 

創建一個指定的時間對象

1
var d = new Date("月/日/年 時:分:秒");

方法:

詳見文檔

Math

Math屬於一個工具類,它不需要我們創建對象,它里邊封裝了屬性運算相關的常量和方法
我們可以直接使用它來進行數學運算相關的操作

方法:

詳見文檔

字符串的相關的方法

詳見文檔

正則表達式

正則表達式用來定義一些字符串的規則,程序可以根據這些規則來判斷一個字符串是否符合規則。
也可以將一個字符串中符合規則的內容提取出來。
創建正則表達式
var reg = new RegExp("正則","匹配模式"); 注意:使用構造函數時,由於它的參數是一個字符串,而\是字符串中轉義字符,如果要使用正則中的 \ 則需要使用 \\ 來代替。(看輸出結果,正則中需要輸出 \. 才可以表示普通的 . 字符,而在字符串中寫 \. 只會輸出 . ,所以要寫 \\.)

var reg = /正則表達式/匹配模式 

匹配模式:
i:忽略大小寫
g:全局匹配模式(使用它是因為正則中默認只匹配1次)
設置匹配模式時,可以都不設置,也可以設置1個,也可以全設置,設置時沒有順序要求

具體語法,詳見文檔

DOM

 

 

 

 

 

 

 

 

 

 

 

 

 

DOM------>用來操作網頁
DOM中的對象和網頁是一一對應的關系

文檔的加載

瀏覽器在加載一個頁面時,是按照自上向下的順序加載的,加載一行執行一行。
如果將js代碼編寫到頁面的上邊,當代碼執行時,頁面中的DOM對象還沒有加載,
此時將會無法正常獲取到DOM對象,導致DOM操作失敗。
解決方式一:
可以將js代碼編寫到body的下邊

1
2
3
4
5
6
7
8
9
10
<body>  
  <button id="btn">按鈕</button>

  <script>
    var btn = document.getElementById("btn");
    btn.onclick = function(){

    };
  </script>
</body>

 

解決方式二:
將js代碼編寫到window.onload = function(){}中
window.onload 對應的回調函數會在整個頁面加載完畢以后才執行,
所以可以確保代碼執行時,DOM對象已經加載完畢了

1
2
3
4
5
6
7
<script>  
window.onload = function(){
var btn = document.getElementById("btn");
btn.onclick = function(){
};
};
</script>

 事件

 

 

 

綁定事件的方式:
1.可以在標簽的事件屬性中設置相應的JS代碼
例子:

1
<button onclick="js代碼。。。">按鈕</button>

 

2.可以通過為對象的指定事件屬性設置回調函數的形式來處理事件
例子:

1
2
3
4
5
6
7
<button id="btn">按鈕</button> 
<script>
var btn = document.getElementById("btn");
btn.onclick = function(){

};
</script>

DOM查詢

在網頁中瀏覽器已經為我們提供了document對象,
它代表的是整個網頁,它是window對象的屬性,可以在頁面中直接使用。

獲取元素節點(通過document對象調用)

根據元素的id屬性查詢一個元素節點對象:
document.getElementById("id屬性值");

根據元素的name屬性值查詢一組元素節點對象:
document.getElementsByName("name屬性值");

根據標簽名來查詢一組元素節點對象:
document.getElementsByTagName("標簽名");
-這個方法會給我們返回一個類數組對象,所有查詢到的元素都會封裝到該數組對象中,即使查詢到的元素只有一個,也會封裝到數組中返回

讀取元素的屬性

語法:元素.屬性名
例子: ele.name
    ele.id
    ele.value
    ele.className
注意:class屬性不能采用這種方式,
讀取class屬性時需要使用 元素.className

innerHTML

使用該屬性可以獲取或設置元素內部的HTML代碼,會獲取到html標簽

innerText

使用該屬性可以獲取或設置元素內部的文本內容
它和innerHTML相似,不同的是它會自動將html標簽去除,如果使用這兩個屬性來設置標簽內部的內容時,沒有任何區別

讀取元素的文本內容的其他方法(推薦使用上方兩個inner屬性,這個僅作了解

元素.firstChild.nodeValue

獲取元素節點的子節點(通過具體的元素節點調用)

返回當前節點的指定標簽名后代節點:(方法)
getElementsByTagName("標簽名");

表示當前節點的所有子節點:(屬性)
childNodes
childNodes屬性會獲取包括文本節點在內的所有節點,根據DOM標准。標簽間的空白也會被當成文本節點

獲取當前元素的所有子元素:(屬性)
children

表示當前節點的第一個子節點:(屬性)
firstNodes

獲取當前元素的第一個子元素:(屬性,不支持IE8)
firstElementChild

表示當前節點的最后一個子節點:(屬性)
lastChild

獲取父節點和兄弟節點(通過具體的元素節點調用)

表示當前節點的父節點:(屬性)
parentNode

表示當前節點的前一個兄弟節點:(屬性)
previousSibling

獲取當前元素的前一個兄弟元素:(屬性,不支持IE8)
previousElementSibling

表示當前節點的后一個兄弟節點:(屬性,不支持IE8)
nextSibling

document對象的其他的屬性和方法

document.all
獲取頁面中的所有元素,相當於document.getElementsByTagName("*");

document.documentElement
獲取頁面中html根元素

document.body
獲取頁面中的body元素

document.getElementsByClassName()
根據元素的class屬性值查詢一組元素節點對象(這個方法不支持IE8及以下的瀏覽器)

document.querySelector()
根據CSS選擇器去頁面中查詢一個元素,需要一個選擇器的字符串作為參數
使用該方法總會返回唯一的一個元素,如果滿足條件的元素有多個,那么它只會返回第一個

document.querySelectorAll()
該方法與querySelector()用法類似,不同的是它會將符合條件的元素封裝到一個數組返回
即使符合條件的元素只有一個,他也會返回數組

 

學識淺薄,如有錯誤,懇請斧正,在下不勝感激。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM