溫故而知新——javascript篇

js是前端工程師的核心,只有掌握了它才算進(jìn)入真真的編程,代碼虐我千百遍,我視代碼如初戀。。。。

什么是javascript?

  • js是一種基于對(duì)象和事件驅(qū)動(dòng)的客戶端腳本語(yǔ)言,最初的設(shè)計(jì)是及檢驗(yàn)html表單輸入的正確性

javascript 的組成

  • ECMAscript(語(yǔ)法)
  • Browser Objects(DOM、BOM)


    image.png

如何使用

  • 可在head或body中使用<script>嵌入js腳本

js注釋

  • 單行注釋 //
  • 多行注釋 /**/

js標(biāo)識(shí)符

  • 變量、函數(shù)、屬性的名稱、函數(shù)參數(shù)
  • 命名規(guī)則

1、由字母、數(shù)字、下劃線(_)或美元符號(hào)($)組成;
2、不能以數(shù)字開頭;
3、不能使用關(guān)鍵字、保留字作為標(biāo)識(shí)符;

變量

  • ECMAScript的變量是松散類型,可以用來(lái)保存任何數(shù)據(jù)類型
  • 變量聲明使用var操作符;
  • 變量賦值:var 變量名 = 值

數(shù)據(jù)類型

  • 基本數(shù)據(jù)類型:Undefined、Null、Boolean、Number和String。
  • 復(fù)雜數(shù)據(jù)類型:Object

undefined

  • undefined類型只有一個(gè)值,即特殊的undefined。

null

  • null值表示一個(gè)空對(duì)象指針
  • 如果定義的變量準(zhǔn)備在將來(lái)用于保存對(duì)象,那么最好將改始化為null而不是其他值。
  • 說(shuō)明:undefined值是派生自null值的,所以u(píng)ndefined==n 回結(jié)果是true。

Number

  • Number:表示整數(shù)和浮點(diǎn)數(shù)
  • NaN:即非數(shù)值(Not a Number)是一個(gè)特殊的數(shù)值

1、任何涉及NaN的操作(例如NaN/10)都會(huì)返回
NaN。
2、NaN與任何值都不相等,包括NaN本身。

  • isNaN()

語(yǔ)法:isNaN(n)
功能:檢測(cè)n是否是“非數(shù)值” 返回值:boolean
參數(shù):參數(shù)n可以是任何類型
說(shuō)明:isNaN()在接收到一個(gè)值之后,會(huì)嘗試將這個(gè)值轉(zhuǎn)換為數(shù)值。
某些不是數(shù)值的值會(huì)直接轉(zhuǎn)換為數(shù)值。

  • 數(shù)值轉(zhuǎn)換

有3個(gè)函數(shù)可以把非數(shù)值轉(zhuǎn)換為數(shù)值:Number()、parseInt()和parseFloat()。其中Number()可以用于任何數(shù)據(jù)類型,而parseInt()和parseFloat()則專門用于把字符串轉(zhuǎn)換成數(shù)值。
一、parseInt() :會(huì)忽略字符串前面的空格,直至找到第一個(gè)非空格字符。
說(shuō)明:
1、parseInt():轉(zhuǎn)換空字符串返回NaN。
2、parseInt()這個(gè)函數(shù)提供第二個(gè)參數(shù):轉(zhuǎn)換時(shí)使用的基數(shù)(即多少進(jìn)制)
二、parseFloat:從第一個(gè)字符開始解析每個(gè)字符,直至遇見一個(gè)無(wú)效的浮點(diǎn)數(shù)字符為止
說(shuō)明:
除了第一個(gè)小數(shù)點(diǎn)有效外,parseFloat()與parseInt()的第二個(gè)區(qū)別在于它始終都會(huì)忽略前導(dǎo)的零。

String

String類型用于表示由零或多個(gè)16位Unicode字符組成的字符序列,即字符串。字符串可以由雙引號(hào)(”)或單引號(hào)(’)表示。

  • toString()與String()

語(yǔ)法:str.toString()
功能:將str轉(zhuǎn)換為字符串
返回值:str的一個(gè)副本
參數(shù):str是要轉(zhuǎn)換的內(nèi)容,可以是數(shù)值、布爾值、對(duì)象和字符串。
說(shuō)明: 在不知道要轉(zhuǎn)換的值是不是null或undefined的情況下,還可以使用String()函數(shù),它能夠?qū)⑷魏晤愋偷闹缔D(zhuǎn)換為字符串。

Boolean

  • 用于表示真假的類型,即true表示真,false表示假
  • 類型轉(zhuǎn)換

1、除0之外的所有數(shù)字,轉(zhuǎn)換為布爾型都為true
2、除””之外的所有字符,轉(zhuǎn)換為布爾型都為true
3、null和undefined轉(zhuǎn)換為布爾型為false

typeof

  • 語(yǔ)法:typeof 變量 或 typeof(變量)
  • 功能:檢測(cè)變量類型
  • 返回值:string類型,有可能是:string、number、boolean、object、undefined、function

JavaScript操作符

操作符的分類

  • 算數(shù)操作符 +,- ,* ,/, %(取余)

遞增和遞減:
++a與a++都是對(duì)a進(jìn)行遞增的操作
區(qū)別:
++a先返回遞增之后的a的值
a++先返回a的原值,再返回遞增之后的值
2、遞減同理

賦值操作符

  • 簡(jiǎn)單賦值:=
  • 復(fù)合賦值:+=、-=、*=、/=、%=

比較操作符

  • <、>=、<=、==、===、!=、!==、>
  • ==:相等,只比較值是否相等
  • ===:相等,比較值的同時(shí)比較數(shù)據(jù)類型是否相等
  • !=:不相等,比較值是否不相等
  • !==:不相等,比較值的同時(shí)比較數(shù)據(jù)類型是否不相等
  • 返回值:boolean型

三元操作符

  • 條件 ? 執(zhí)行代碼1:執(zhí)行代碼2

可代替簡(jiǎn)單的if語(yǔ)句,如果條件成立,執(zhí)行代碼1,否則執(zhí)行代碼2

邏輯操作符

  • 邏輯與:&&

&& (只要有一個(gè)條件不成立,返回false)
說(shuō)明:在有一個(gè)操作數(shù)不是布爾值的情況,邏輯與操作就不一定返回值,
此時(shí)它遵循下列規(guī)則:
1、如果第一個(gè)操作數(shù)隱式類型轉(zhuǎn)換后為true,則返回第二個(gè)操作數(shù)
2、如果第一個(gè)操作數(shù)隱式類型轉(zhuǎn)換后為false,則返回第一個(gè)操作數(shù)
3、如果有一個(gè)操作數(shù)是null,則返回null
4、如果有一個(gè)操作數(shù)是NaN,則返回NaN
5、如果有一個(gè)操作數(shù)是undefined,則返回undefined

  • 邏輯或:||

|| (只要有一個(gè)條件成立,返回true)
說(shuō)明:在有一個(gè)操作數(shù)不是布爾值的情況,邏輯與操作就不一定返回值,此時(shí)它遵循下列規(guī)則:
1、如果第一個(gè)操作數(shù)隱式類型轉(zhuǎn)換后為true,則返回第一個(gè)操作數(shù)
2、如果第一個(gè)操作數(shù)隱式類型轉(zhuǎn)換后為false,則返回第二個(gè)操作數(shù)
3、如果兩個(gè)操作數(shù)是null,則返回null
4、如果兩個(gè)操作數(shù)是NaN,則返回NaN
5、如果兩個(gè)操作數(shù)是undefined,則返回undefined

  • 邏輯非:!

說(shuō)明:
1、無(wú)論操作數(shù)是什么數(shù)據(jù)類型,邏輯非都會(huì)返回一個(gè)布爾值
2、 ! ! 同時(shí)使用兩個(gè)邏輯非操作符時(shí):
第一個(gè)邏輯非操作會(huì)基于無(wú)論什么操作數(shù)返回一個(gè)布爾值, 第二個(gè)邏輯非則對(duì)該布爾值求反。

JavaScript語(yǔ)句

  • if(條件){ }else{ }
  • if(條件){ }else if(條件){ } else{ }
  • switch語(yǔ)句:
switch( expression ){
       case value:statement
       break;
       case value:statement
       break;
       ......
      default:statement
}
  • for語(yǔ)句

語(yǔ)法:for(語(yǔ)句1;語(yǔ)句2;語(yǔ)句3){被執(zhí)行的代碼塊;}
語(yǔ)句1 :在循環(huán)(代碼塊)開始前執(zhí)行
語(yǔ)句2:定義運(yùn)行循環(huán)(代碼塊)的條件
語(yǔ)句3 :在循環(huán)(代碼塊)已被執(zhí)行之后執(zhí)行
嵌套說(shuō)明:當(dāng)循環(huán)與循環(huán)發(fā)生嵌套時(shí)遵循下列規(guī)則:
1、外層為假時(shí)內(nèi)層不執(zhí)行;
2、先執(zhí)行外層再執(zhí)行內(nèi)層,直至內(nèi)層的條件為假時(shí)再返回外層去執(zhí)行。

  • break語(yǔ)句:立即退出循環(huán)
  • continue 語(yǔ)句: 結(jié)束本次循環(huán),繼續(xù)開始下一次。

JavaScript中的函數(shù)

函數(shù)的作用

  • 通過(guò)函數(shù)可以封裝任意多條語(yǔ)句,而且可以在任何地方、任何時(shí)候調(diào)用執(zhí)行。

函數(shù)的返回值

  • 任何函數(shù)在任何時(shí)候都可以通過(guò)return語(yǔ)句后跟要返回的值來(lái)實(shí)現(xiàn)返回值。

1、函數(shù)會(huì)在執(zhí)行完return語(yǔ)句之后停止并立即退出。
2、return語(yǔ)句也可以不帶有任何返回值,一般用于需要提前停止函數(shù)執(zhí)行而又不需要返回值的情況下

函數(shù)參數(shù)

  • arguments

1、arguments對(duì)象只是與數(shù)組類似,并不是Array的實(shí)例。
2、[] 語(yǔ)法訪問(wèn)它的每一個(gè)元素。
3、length屬性確定傳遞參數(shù)的個(gè)數(shù)

JavaScript中的內(nèi)置對(duì)象

數(shù)組Array

  • 如何創(chuàng)建數(shù)組

創(chuàng)建數(shù)組的基本方式有兩種:
1、使用Array構(gòu)造函數(shù),語(yǔ)法為:new Array()說(shuō)明:
(1)如果預(yù)先知道數(shù)組要保存的項(xiàng)目數(shù)量。
(2)也可以向Array構(gòu)造函數(shù)傳遞數(shù)組總應(yīng)該包含的項(xiàng)目。
2、使用數(shù)組字面量表示法由一對(duì)包含數(shù)組項(xiàng)的方括號(hào)表示,多個(gè)數(shù)組項(xiàng)之間以逗號(hào)隔開。

  • 數(shù)組元素的讀寫

讀取和設(shè)置值時(shí),使用方括號(hào)并提供相應(yīng)的索引說(shuō)明:索引是從0開始的正整數(shù)

  • 數(shù)組長(zhǎng)度

語(yǔ)法:array.length
功能:獲取數(shù)組array的長(zhǎng)度
返回值:number
說(shuō)明:
1、通過(guò)設(shè)置length可以從數(shù)組的末尾移除項(xiàng)或向數(shù)組中添加新項(xiàng)。
2、把一個(gè)值放在超出當(dāng)前數(shù)組大小的位置上時(shí),會(huì)重新計(jì)算數(shù)組長(zhǎng)度值,長(zhǎng)度值等于最后一項(xiàng)索引加1。

  • 數(shù)組的棧方法
    1、push()

語(yǔ)法:
arrayObject.push(newele1,newele2,....,neweX)
功能:把它的參數(shù)順序添加到arrayObject 的尾部。
返回值:把指定的值添加到數(shù)組后的新長(zhǎng)度。

2、unshift()

語(yǔ)法:arrayObject.unshift(newele1,newele2,....,neweX)
功能:把它的參數(shù)順序添加到arrayObject 的開頭。
返回值:把指定的值添加到數(shù)組后的新長(zhǎng)度

3、pop()

語(yǔ)法:arrayObject.pop()
功能:刪除arrayObject 的最后一個(gè)元素。
返回值:被刪除的那個(gè)元素。

4、shift()

語(yǔ)法:arrayObject.shift()
功能:刪除arrayObject中的第一個(gè)元素
返回值:被刪除的那個(gè)元素

  • 數(shù)組的轉(zhuǎn)換方法
    join()

語(yǔ)法:arrayObject.join(separator)
功能:用于把數(shù)組中的所有元素放入一個(gè)字符串。
返回值:字符串

  • 數(shù)組的重排序方法
    1、reverse()

語(yǔ)法:stringObject.reverse()
功能:用于顛倒數(shù)組中元素的順序。
返回值:數(shù)組

2、sort()

語(yǔ)法:arrayObject.sort(sortby)
功能:用于對(duì)數(shù)組的元素進(jìn)行排序。
返回值:數(shù)組。
說(shuō)明:
1、即使數(shù)組中的每一項(xiàng)都是數(shù)值,sort()方法比較的也是字符串。
2、sort()方法可以接收一個(gè)比較函數(shù)作為參數(shù)

  • 數(shù)組的操作方法
    1、concat()

語(yǔ)法:arrayObject.concat(arrayX,arrayX,......,arrayX)
功能:用于連接兩個(gè)或多個(gè)數(shù)組。
返回值:數(shù)組。

2、slice()

語(yǔ)法:arrayObject.slice(start,end)
功能:從已有的數(shù)組中返回選定的元素。
參數(shù):start (必需)規(guī)定從何處開始選取,如果是負(fù)數(shù),那么它規(guī)定從數(shù)組尾部開始算起的位置。
end(可選)規(guī)定從何處結(jié)束選取,該參數(shù)是數(shù)組片斷結(jié)束處的數(shù)組下標(biāo)。
說(shuō)明:
1、如果沒有指定end,那么切分的數(shù)組包含從start 到數(shù)組結(jié)束的所有元素。
2、如果slice()方法的參數(shù)中有一個(gè)負(fù)數(shù),則用數(shù)組長(zhǎng)度加上該數(shù)來(lái)確定相應(yīng)的位置。
返回值:數(shù)組

3、splice()方法刪除數(shù)組項(xiàng)

語(yǔ)法:arrayObject.splice(index,count)
功能:刪除從index 處開始的零個(gè)或多個(gè)元素。
返回值:含有被刪除的元素的數(shù)組。
說(shuō)明:count是要?jiǎng)h除的項(xiàng)目數(shù)量,如果設(shè)置為0,則不會(huì)刪除項(xiàng)目。如果不設(shè)置,則刪除從index開始的所有值

splice()方法插入數(shù)組項(xiàng)

語(yǔ)法:arrayObject.splice(index,0,item1,.....,itemX)
功能:在指定位置插入值
參數(shù):
Index:起始位置
0:要?jiǎng)h除的項(xiàng)數(shù)
item1...itemX:要插入的項(xiàng)
返回值:數(shù)組

splice()方法替換數(shù)組項(xiàng)

語(yǔ)法:arrayObject.splice(index,count,item1,.....,itemX)
功能:在指定位置插入值,且同時(shí)刪除任意數(shù)量的項(xiàng)
參數(shù):
Index:起始位置
count:要?jiǎng)h除的項(xiàng)數(shù)
item1...itemX:要插入的項(xiàng)
返回值:從原始數(shù)組中刪除的項(xiàng)(如果沒有刪除任何項(xiàng),則返回空數(shù)組)

  • 數(shù)組添加的兩個(gè)位置方法
    1、 indexOf()

語(yǔ)法:arrayObject.indexOf(searchvalue,startIndex)
功能:從數(shù)組的開頭(位置0)開始向后查找。
參數(shù):
searchvalue:必需,要查找的項(xiàng);
startIndex:可選,起點(diǎn)位置的索引。
返回值:number,查找的項(xiàng)在數(shù)組中的位置,沒有找到的情況下返回-1
2、 lastIndexOf()
語(yǔ)法:arrayObject.lastIndexOf(searchvalue,startIndex)
功能:從數(shù)組的末尾開始向前查找。
參數(shù):
searchvalue:必需,要查找的項(xiàng);
startIndex:可選,起點(diǎn)位置的索引。
返回值:number,查找的項(xiàng)在數(shù)組中的位置,沒有找到的情況下返回-1。

字符串String

  • 字符串對(duì)象的方法
    1、charAt()

語(yǔ)法:stringObject.charAt(index)
功能:返回stringObject中index位置的字符

2、charCodeAt()

語(yǔ)法:stringObject.charCodeAt(index)
功能:返回stringObject中index位置字符的字符編碼

3、indexOf()

語(yǔ)法:stringObject.indexOf("o")
功能:從一個(gè)字符串中搜索給定的子字符串,返回子字符串的位置。
返回值:數(shù)值說(shuō)明:如果沒有找到該子字符串,則返回-1。

4、lastIndexOf()

語(yǔ)法:stringObject.lastIndexOf("o")
功能:從一個(gè)字符串中搜索給定的子字符串,返回子字符串的位置
返回值:數(shù)值
說(shuō)明:如果沒有找到該子字符串,則返回-1

5、split()

語(yǔ)法:stringObject.split(separator)
功能:把一個(gè)字符串分割成字符串?dāng)?shù)組。
返回值:Array。
說(shuō)明:separator:必需,分隔符

6、replace()

語(yǔ)法:stringObject.replace(regexp/substr,replacement)
功能:在字符串中用一些字符替換另一些字符,或替換一個(gè)與正則表達(dá)式匹配的子串。
返回值:String
參數(shù):
regexp:必需。規(guī)定子字符串或要替換的模式的RegExp對(duì)象。
replacement::必需。一個(gè)字符串值

  • 字符串對(duì)象的截取方法
    1、slice()

語(yǔ)法:stringValue.slice(start,end)
功能:截取子字符串。
參數(shù)說(shuō)明:
1、start:必需,指定子字符串的開始位置。
2、end:可選,表示子字符串到哪里結(jié)束,end本身不在截取范圍之內(nèi),省略時(shí)截取至字符串的末尾。
3、當(dāng)參數(shù)為負(fù)數(shù)時(shí),會(huì)將傳入的負(fù)值與字符串的長(zhǎng)度相加。

2、substring()

說(shuō)明:語(yǔ)法及功能同slice()完全一樣。
區(qū)別在于:
1、當(dāng)參數(shù)為負(fù)數(shù)時(shí),自動(dòng)將參數(shù)轉(zhuǎn)換為0。
2、substring()會(huì)將較小的數(shù)作為開始位置,將較大的數(shù)作為結(jié)束位置。

3、substr()

語(yǔ)法:stringValue.substr(start,len)
功能:截取子字符串。
參數(shù)說(shuō)明:
1、start:必需,指定子字符串的開始位置。
2、len:可選,表示截取的字符總數(shù),省略時(shí)截取至字符串的末尾。
3、當(dāng)start為負(fù)數(shù)時(shí),會(huì)將傳入的負(fù)值與字符串的長(zhǎng)度相加。
4、當(dāng)len為負(fù)數(shù)時(shí),返回空字符串

  • 字符串轉(zhuǎn)換方法
    1、toUpperCase()

語(yǔ)法:stringValue.toUpperCase()
功能:把字符串轉(zhuǎn)換為大寫。

2、toLowerCase()

語(yǔ)法:stringValue.toLowerCase()
功能:把字符串轉(zhuǎn)換為小寫

算數(shù)Math

  • Math.min()

語(yǔ)法:Math.min(num1,num2...numN)
功能:求一組數(shù)中的最小值。
返回值:Number

  • Math.max()

語(yǔ)法:Math.max(num1,num2...numN)
功能:求一組數(shù)中的最大值。
返回值:Number。

  • Math.ceil()

語(yǔ)法:Math.ceil(num)
功能:向上取整,即返回大于num的最小整數(shù)。
返回值:Number。

  • Math.floor()

語(yǔ)法:Math.floor(num)
功能:向下取整,返回num的整數(shù)部分。
返回值:Number。

  • Math.round()

法:Math.round(num)
功能:將數(shù)值四舍五入為最接近的整數(shù)。
返回值:Number。

  • Math.abs()

語(yǔ)法:Math.abs (num)
功能:返回num的絕對(duì)值。
返回值:Number。

  • Math.random()

語(yǔ)法:Math.random()
功能:返回大于等于0小于1的一個(gè)隨機(jī)數(shù)。
返回值:Number。
說(shuō)明:
求n到m之間的隨機(jī)整數(shù)的公式:random=Math.floor(Math.random()*(m-n+1)+n)

日期Date

  • 如何創(chuàng)建一個(gè)日期對(duì)象

語(yǔ)法:new Date();
功能:創(chuàng)建一個(gè)日期時(shí)間對(duì)象
返回值:不傳參的情況下,返回當(dāng)前的日期時(shí)間對(duì)象。
說(shuō)明:
如果想根據(jù)特定的日期和時(shí)間創(chuàng)建日期對(duì)象,必須傳入表示該日期的毫秒數(shù)或者是一組用逗號(hào)隔開的表示年月日時(shí)分秒的參數(shù)

  • 獲取年月日時(shí)分秒及星期的方法

1、getFullYear():返回4位數(shù)的年份
2、getMonth():返回日期中的月份,返回值為0-11
3、getDate():返回月份中的天數(shù)
4、getDay():返回星期,返回值為0-6
5、getHours():返回小時(shí)
6、getMinutes():返回分
7、getSeconds():返回秒
8、getTime():返回表示日期的毫秒數(shù)

  • 設(shè)置年月日時(shí)分秒及星期的方法

1、setFullYear(year):設(shè)置4位數(shù)的年份
2、setMonth(mon):設(shè)置日期中的月份,從0開始,0表示1月
3、setDate():設(shè)置日期
4、setDay():設(shè)置星期,從0開始,0表示星期日
5、setHours():設(shè)置小時(shí)
6、setMinutes():設(shè)置分
7、setSeconds():設(shè)置秒
8、setTime():以毫秒數(shù)設(shè)置日期,會(huì)改變整個(gè)日期

JavaScript 事件基礎(chǔ)

  • 事件

事件就是文檔或?yàn)g覽器窗口中發(fā)生的一些特定的交互瞬間。

  • DOM0級(jí)事件

語(yǔ)法:ele.事件=執(zhí)行腳本
功能:在DOM對(duì)象上綁定事件
說(shuō)明:執(zhí)行腳本可以是一個(gè)匿名函數(shù),也可以是一個(gè)函數(shù)的調(diào)用。

  • 鼠標(biāo)事件

onload:頁(yè)面加載時(shí)觸發(fā)
onclick:鼠標(biāo)點(diǎn)擊時(shí)觸發(fā)
onmouseover:鼠標(biāo)滑過(guò)時(shí)觸發(fā)
onmouseout:鼠標(biāo)離開時(shí)觸發(fā)
onfoucs:獲得焦點(diǎn)時(shí)觸發(fā)
onblur:失去焦點(diǎn)時(shí)觸發(fā)
onchange:域的內(nèi)容改變時(shí)發(fā)生
onsubmit:表單中的確認(rèn)按鈕被點(diǎn)擊時(shí)發(fā)生
onmousedown:鼠標(biāo)按鈕在元素上按下時(shí)觸發(fā)
onmousemove:在鼠標(biāo)指針移動(dòng)時(shí)發(fā)生
onmouseup:在元素上松開鼠標(biāo)按鈕時(shí)觸發(fā)
onresize:當(dāng)調(diào)整瀏覽器窗口的大小時(shí)觸發(fā)
onscroll:拖動(dòng)滾動(dòng)條滾動(dòng)時(shí)觸發(fā)

  • 鍵盤事件與keyCode屬性

onkeydown:在用戶按下一個(gè)鍵盤按鍵時(shí)發(fā)生
onkeypress:在鍵盤按鍵被按下并釋放一個(gè)鍵時(shí)發(fā)生
onkeyup:在鍵盤按鍵被松開時(shí)發(fā)生
keyCode:返回onkeypress、onkeydown或onkeyup事件觸發(fā)的鍵的值的字符代碼,或者的鍵的代碼

JavaScript BOM

  • BOM

BOM(browser object model)瀏覽器對(duì)象模型

  • window

window是瀏覽器的一個(gè)實(shí)例,在瀏覽器中,window對(duì)象有雙重角色,它既是通過(guò)JavaScript訪問(wèn)瀏覽器窗口的一個(gè)接口,又是ECMAScript規(guī)定的Global對(duì)象。

  • Window對(duì)象的方法
    1、window.alert

語(yǔ)法:window.alert(”content”)
功能:顯示帶有一段消息和一個(gè)確認(rèn)按鈕的警告框

2、window.confirm

語(yǔ)法:window.confirm(“message")
功能:顯示一個(gè)帶有指定消息和OK及取消按鈕的對(duì)話框
返回值:如果用戶點(diǎn)擊確定按鈕,則confirm()返回true,如果用戶點(diǎn)擊取消按鈕,則confirm()返回false

3、window.prompt

語(yǔ)法:window.prompt(“text,defaultText")
參數(shù)說(shuō)明:
text:要在對(duì)話框中顯示的純文本(而不是HTML格式的文本)
defaultText:默認(rèn)的輸入文本
返回值:如果用戶單擊提示框的取消按鈕,則返回null如果用戶單擊確認(rèn)按鈕,則返回輸入字段當(dāng)前顯示的文本

4、window.open

語(yǔ)法:window.open(pageURL,name,parameters)
功能:打開一個(gè)新的瀏覽器窗口或查找一個(gè)已命名的窗口
參數(shù)說(shuō)明:
pageURL:子窗口路徑
name:子窗口句柄。
parameters :窗口參數(shù)(各參數(shù)用逗號(hào)分隔)

5、window.close

語(yǔ)法:window.close( )
功能:關(guān)閉瀏覽器窗口

  • 超時(shí)調(diào)用

語(yǔ)法:setTimeout(code,millisec)
功能:在指定的毫秒數(shù)后調(diào)用函數(shù)或計(jì)算表達(dá)式
參數(shù)說(shuō)明:
1、code:要調(diào)用的函數(shù)或要執(zhí)行的JavaScript代碼串
2、millisec:在執(zhí)行代碼前需等待的毫秒數(shù)
說(shuō)明:
setTimeout()只執(zhí)行code一次。如果要多次調(diào)用,請(qǐng)使用setInterval()或者讓code自身再次調(diào)用setTimeout()

  • 清除超時(shí)調(diào)用

語(yǔ)法:clearTimeout(id_of_settimeout)
功能:取消由setTimeout()方法設(shè)置的timeout
參數(shù)說(shuō)明:
1、id_of_settimeout:由setTimeout()返回的ID值,該值標(biāo)識(shí)要取消的延遲執(zhí)行代碼塊

  • 間歇調(diào)用

語(yǔ)法:setInterval(code,millisec)
功能:每隔指定的時(shí)間執(zhí)行一次代碼
參數(shù)說(shuō)明:
1、code:要調(diào)用的函數(shù)或要執(zhí)行的代碼串。
2、millisec:周期性執(zhí)行或調(diào)用code之間的時(shí)間間隔,以毫秒計(jì)

location對(duì)象

location對(duì)象提供了與當(dāng)前窗口中加載的文檔有關(guān)的信息,還提供了一些導(dǎo)航的功能,它既是window對(duì)象的屬性,也是document對(duì)象的屬性

  • location對(duì)象的常用屬性
    1、location.href

功能:返回當(dāng)前加載頁(yè)面的完整URL
說(shuō)明:location.href與window.location.href等價(jià)

2、location.hash

功能:返回URL中的hash(#號(hào)后跟零或多個(gè)字符),如果不包含則返回空字符串。

3、location.host

功能:返回服務(wù)器名稱和端口號(hào)(如果有)

4、location.hostname

功能:返回不帶端口號(hào)的服務(wù)器名稱。

5、location.pathname

返回URL中的目錄和(或)文件名。

6、location.port

功能:返回URL中指定的端口號(hào),如果沒有,返回空字符串。

7、location.protocol

功能:返回頁(yè)面使用的協(xié)議。

8、location.search

功能:返回URL的查詢字符串。這個(gè)字符串以問(wèn)號(hào)開頭。

9、location.replace()

語(yǔ)法:location.replace(url)
功能:重新定向URL。
說(shuō)明:
使用location.replace不會(huì)在歷史記錄中生成新紀(jì)錄。

10、location.reload()

功能:重新加載當(dāng)前顯示的頁(yè)面。
說(shuō)明:
location.reload()有可能從緩存中加載
location.reload(true)從服務(wù)器重新加載

  • 改變?yōu)g覽器位置的方法:

location.href屬性
location對(duì)象其他屬性也可改變URL:
location.hash
location.search

history歷史對(duì)象

  • history.back()

功能:回到歷史記錄的上一步
說(shuō)明:相當(dāng)于使用了history.go(-1)

  • location.forward()

功能:回到歷史記錄的下一步
說(shuō)明:相當(dāng)于使用了history.go(1)

  • history.go(-n)

功能:回到歷史記錄的前n步

  • history.go(n)

功能:回到歷史記錄的后n步

Screen對(duì)象屬性

  • screen.availWidth:返回可用的屏幕寬度
  • screen.availHeight :返回可用的屏幕高度

Navigator對(duì)象

  • UserAgent

用來(lái)識(shí)別瀏覽器名稱、版本、引擎以及操作系統(tǒng)等信息的內(nèi)容

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第5章 引用類型(返回首頁(yè)) 本章內(nèi)容 使用對(duì)象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,679評(píng)論 0 4
  • 第1章 認(rèn)識(shí)JS JavaScript能做什么?1.增強(qiáng)頁(yè)面動(dòng)態(tài)效果(如:下拉菜單、圖片輪播、信息滾動(dòng)等)2.實(shí)現(xiàn)...
    mo默22閱讀 1,512評(píng)論 0 5
  • 這兩天呆在家里,多虧有它做伴兒, 稍有空氣異味兒,立馬發(fā)紅色警報(bào), 一會(huì)兒又變黃色,最后恢復(fù)到綠色, 清除室內(nèi)異味...
    夢(mèng)想917閱讀 257評(píng)論 0 2
  • 官網(wǎng)解釋如下: This issue has been specifically observed in Wind...
    Joezer閱讀 4,169評(píng)論 0 3
  • 67天 小雨 還在天貓,但是不放心,還不如直接到官網(wǎng)去。原來(lái)是x要到11月,但是我就得等到那會(huì)耶,那就剛剛好...
    紅玫瑰4閱讀 259評(píng)論 0 0

友情鏈接更多精彩內(nèi)容