天天看點

Javaweb_js對象_Day3

Day 3

Javaweb_js對象_Day3

一、  js的String對象

1. 建立String對象

var str = "abc"

2. 方法和屬性

A.屬性

length:字元串的長度

對象名.屬性;

B.方法

對象名.方法();

與html相關的方法(設定資料樣式的方法)

str.bold():使用粗體顯示字元串

str.fontcolor("color"):使用指定的顔色來顯示字元串。

str.fontsize(size):使用指定的尺寸來顯示字元串。

str.link(url): 将字元串顯示為連結。

str.sub():把字元串顯示為下标。

str.sup():把字元串顯示為上标。

與java相似的方法

str.concat(str1,str2,...,strn):連接配接字元串

str.charAt(index):傳回在指定位置的字元。

str.indexOf(searchvalue,fromindex):檢索字元串。

--indexOf() 方法對大小寫敏感!

--如果要檢索的字元串值沒有出現,則該方法傳回 -1。

str.split(separator,howmany):把字元串分割為字元串數組。

str.replace(regexp,replacement):替換與正規表達式比對的子串。

   --如果 regexp 具有全局标志 g,那麼 replace() 方法将替換所有比對的子串。否則,它隻替換第一個比對子串。

str.substr(start,length):從起始索引号提取字元串中指定數目的字元。

str.substring(start,stop): 提取字元串中兩個指定的索引号之間的字元。

二、  js的Array對象

1. 建立Array對象(三種方法)

A.   var arr = [1,2,3];

B.   var arr = new Array(3);

C.   var arr = new Array(1,2,3);

2. 屬性和方法

A.   屬性

length:數組的長度

B.   方法

arr.concat(arr1,arr2,......,arrn):連接配接兩個或更多的數組,并傳回結果。

arr.join(separator):把數組的所有元素放入一個字元串。元素通過指定的分隔符進行分隔。

arr.push(newelement1,newelement2,....,newelementX):向數組的末尾添加一個或更多元素,并傳回新的長度。

   --如果添加的是一個數組,這個時候把數組當做一個整體字元串添加進去

arr.pop():删除并傳回數組的最後一個元素

arr.reverse():颠倒數組中元素的順序

三、  js的Date對象

1. 建立Date對象

vardate = new Date();

2. 屬性和方法

A.   屬性

B.   方法

date.toLocaleString():根據本地時間格式,把 Date 對象轉換為字元串。

date.getFullYear():從 Date 對象以四位數字傳回年份

date.getMonth():從 Date 對象傳回月份 (0 ~ 11)

   --如果想要得到準确的值,需要加1

date.getDay():從 Date 對象傳回一周中的某一天 (0 ~ 6)

   --星期日傳回的是0,星期一到星期六傳回的是1~6

date.getDate():從 Date 對象傳回一個月中的某一天 (1 ~ 31)

date.getHours():傳回 Date 對象的小時 (0 ~ 23)

date.getMinutes():傳回 Date 對象的分鐘 (0 ~ 59)

date.getSeconds():傳回 Date 對象的秒數 (0 ~ 59))

date.getTime(): 傳回 1970 年 1 月 1 日至今的毫秒數

   --應用場景:使用毫秒數處理緩存的效果(不有緩存)

四、  js的Math對象(數學運算)

1. 裡面都是靜态方法,可以直接使用Math.方法()

Math 對象并不像 Date 和String 那樣是對象的類,是以沒有構造函數 Math(),像 Math.sin() 這樣的函數隻是函數,不是某個對象的方法。

2. 屬性和方法

A.   屬性

B.   方法

Math.ceil(x): 對一個數進行上舍入。

Math.floor(x):對一個數進行下舍入。

Math.round(x):把一個數四舍五入為最接近的整數

Math.random():傳回 0 ~ 1之間的随機數

五、  js的全局函數

1. 由于不屬于任何一個對象,直接寫名稱使用

2. 屬性和方法

A.   屬性

B.   方法

eval(string):計算JavaScript 字元串,并把它作為腳本代碼來執行。

   --該方法隻接受原始字元串作為參數,如果 string 參數不是原始字元串,那麼該方法将不作任何改變地傳回。是以請不要為 eval() 函數傳遞 String 對象來作為參數。

encodeURI(URIstring):對字元進行編碼,不編碼字元有82個

encodeURIComponent(URIstring):對字元進行編碼,不編碼字元有71個

decodeURI(URIstring):對字元進行解碼

decodeURIComponent(URIstring):對字元進行解碼

isNaN(x): 檢查某個值是否是數字。

   --如果 x 不是數字,則傳回true

--如果 x 是數字,則傳回 false。

parseInt(string,radix) :類型轉換,将字元串轉換為整數。

六、  js函數的重載

1. 重載:方法名相同,參數不同

2. js是否存在重載?

Javaweb_js對象_Day3

A.   js裡面不存在重載,調用最後一個方法。把傳遞的參數儲存到arguments數組裡面

B.   但是可以通過其他方式模拟重載。

Javaweb_js對象_Day3

七、  js的BOM(browser object model)對象

1. navigator對象(了解)

擷取客戶機的資訊(浏覽器的資訊)

navigator.appName:傳回浏覽器的名稱

2. screen對象(了解)

擷取螢幕的資訊

screen.width:螢幕的寬

screen.weight:螢幕的高

3. location對象(了解)

請求的URL位址

location.href:擷取請求的URL位址

location.href="需要跳轉到的位址" target="_blank" rel="external nofollow" :設定URL位址

需求

滑鼠點選事件:在頁面上安置一個按鈕,按鈕上綁定一個事件,當點選這個按鈕時,頁面可以跳轉到另一個頁面

普通按鈕:<input type="botton" value="普通按鈕" οnclick="js方法名()"/>  --和js一起使用(表示點選按鈕,調用js方法)

Javaweb_js對象_Day3

4. history對象(了解)

請求的URL的曆史記錄

需求

模拟URL曆史記錄:建立三個頁面

   --建立第一個頁面a.html,寫一個超連結到b.html

   --建立b.html超連結到c.html

   --建立c.html

history.back():加載history 清單中的前一個 URL

history.forward():加載history 清單中的下一個 URL

history.go(n): 加載 history 清單中的某個具體頁面

   --n=1,到下一個URL

--n=-1,到前一個URL

Javaweb_js對象_Day3

5. window對象(重點)

上面所講的navigator、screen、location、history對象其實都是屬于window對象裡面的屬性,即應該這樣調用:window. navigator. appName,但是一般都省略了window,直接寫成了navigator. appName。

視窗對象

頂層對象(所有的BOM對象都是在window裡面操作的)

方法:

window.alert(message):頁面彈出一個框,顯示内容

   --簡寫alert()

window.confirm(message): 顯示帶有一段消息以及确認按鈕和取消按鈕的對話框。

   --如果點選确定按鈕,則 confirm() 傳回 true

--如果點選取消按鈕,則 confirm() 傳回 false

window.prompt(text,defaultText):輸入對話框。

   --text:要在對話框中顯示的純文字

   -- defaultText:預設的輸入文本

window.open(URL,name,features,replace): 打開一個新的視窗

   -- URL:打開的新視窗的位址url

   --name:一般為空

   --features:視窗特征,比如說視窗的寬度和高度

window.close():關閉浏覽器視窗(浏覽器相容性比較差)

設定定時器(timeout)

window.setInterval("js代碼",毫秒數): 按照指定的周期(以毫秒計)來調用函數或計算表達式。

//每3秒,執行一次alert方法

window.setInterval("alert('123')",3000);

window.setTimeout("js代碼",毫秒數):在指定的毫秒數後調用函數或計算表達式,但是隻會執行一次

//3秒後,執行一次alert方法,然後不再執行

window.setInterval("alert('123')",3000);

清除定時器(timeout)

window.clearInterval(id_of_setinterval):取消由setInterval() 設定的定時器

window.clearTimeout(id_of_settimeout):取消由setTimeout()方法設定的定時器

八、  js的DOM(document object model)對象

文檔:超文本文檔(标記型文檔) html、xml

對象:屬性、方法

模型:使用屬性和方法操作超文本标記文檔

   可以使用js裡面的dom提供的對象,使用這些對象的屬性和方法,對超文本标記文檔進行操作

   要對标記型文檔進行操作,首先需要對标記型文檔裡面的所有内容(html裡面的标簽、屬性、文本等)封裝成對象(document對象、element對象、屬性對象、文本對象、Note節點對象),使用dom解析标記型文檔

document對象:整個html文檔

element對象:标簽對象

屬性對象

文本對象

Note節點對象:上述對象的父對象

樹形結構:有且隻有一個根節點,在根節點下面可以有多個子節點,沒有子節點的節點為葉子節點

DHML:很多技術的簡稱

   --html:封裝資料

   --css:使用屬性和屬性值設定樣式

   --dom:操作html文檔(标記型文檔)

   --js:專門指的是js的文法語句(ECMAScript)

1. document對象:整個html封裝成的文檔

方法

document.write(exp1,exp2,exp3,....):向文檔寫HTML表達式或 JavaScript 代碼。

document.getElementById(id):通過标簽的id屬性值,傳回元素(标簽)對象

Javaweb_js對象_Day3

document.getElementsByName(name): 通過标簽的name屬性值,傳回元素(标簽)數組對象

document.getElementsByTagName(tagname) :通過标簽,傳回帶有指定标簽名的對象集合

Javaweb_js對象_Day3
Javaweb_js對象_Day3

屬性

opener: 傳回對建立此視窗的視窗的引用。

window彈窗案例

   做這個案例的時候會有一個問題,由于現在通路的是本地檔案,js安全性,谷歌浏覽器安全級别很高,不允許通路本地檔案。在實際開發中,沒有這樣的問題,實際中不可能通路本地的檔案。

2. element對象:标簽對象屬性對象

文本對象

Note節點對象:上述對象的父對象

剩下的這些對象在Day4裡面講

更多AI資源請關注公衆号:大胡子的AI

Javaweb_js對象_Day3

歡迎各位AI愛好者加入群聊交流學習:882345565(内有大量免費資源哦!)

Javaweb_js對象_Day3
下一篇: js DAY3 PART|