js物件方法
Number物件方法
toFixed() 方法
toFixed()方法返回的是具有指定位數小數的數字的字串表示。例如:
var oNumberObject = new Number(68);
alert(oNumberObject.toFixed(2)); //輸出 "68.00"
toExponential() 方法
它返回的是用科學計數法表示的數字的字串形式。
與toFixed()方法相似,toExponential()方法也有一個引數,指定要輸出的小數的位數。
var oNumberObject = new Number(68); alert(oNumberObject.toExponential(1)); //輸出 "6.8e+1"
String物件方法:
charAt() 和 charCodeAt() 方法
charAt()方法返回的是包含指定位置處的字元的字串:
var oStringObject = new String("hello world");
alert(oStringObject.charAt(1)); //輸出 "e"
如果想得到的不是字元,而是字元程式碼,那麼可以呼叫charCodeAt()方法:
var oStringObject = new String("hello world"); alert(oStringObject.charCodeAt(1)); //輸出 "101" //這個例子輸出"101",即小寫字母"e"的字元程式碼。
concat() 方法
concat()方法,用於把一個或多個字串連線到String物件的原始值上。該方法返回的是String原始值,保持原始的String物件不變:
var oStringObject = new String("hello ");
var sResult = oStringObject.concat("world");
alert(sResult); //輸出 "hello world"
alert(oStringObject); //輸出 "hello "
indexOf() 和 lastIndexOf() 方法
indexOf()和lastIndexOf()方法返回的都是指定的子串在另一個字串中的位置,如果沒有找不到子串,則返回-1。
/**
*indexOf()方法是從字串的開頭(位置0)開始檢索字串,
*而lastIndexOf()方法則是從字串的結尾開始檢索子串
*/
var oStringObject = new String("hello world!");
alert(oStringObject.indexOf("o")); //輸出 "4"
alert(oStringObject.lastIndexOf("o")); //輸出 "7"
localeCompare() 方法
localeCompare(),對字串進行排序。
slice() 和 substring()
這兩種方法返回的都是要處理的字串的子串,都接受一個或兩個引數。第一個引數是要獲取的子串的起始位置,第二個引數(如果使用的話)是要獲取子串終止前的位置(也就是說,獲取終止位置處的字元不包括在返回的值內)。如果省略第二個引數,終止位就預設為字串的長度。
與concat()方法一樣,slice()和substring()方法都不改變String物件自身的值。它們只返回原始的String值,保持String物件不變。
var oStringObject = new String("hello world");
alert(oStringObject.slice("3")); //輸出 "lo world"
alert(oStringObject.substring("3")); //輸出 "lo world"
alert(oStringObject.slice("3", "7")); //輸出 "lo w"
alert(oStringObject.substring("3", "7")); //輸出 "lo w"
這兩個方法並不完全相同,不過只在引數為負數時,它們處理引數的方式才稍有不同。
對於負數引數,slice()方法會用字串的長度加上引數,substring()方法則將其作為0處理(也就是說將忽略它)。
var oStringObject = new String("hello world");
alert(oStringObject.slice("-3")); //輸出 "rld"
alert(oStringObject.substring("-3")); //輸出 "hello world"
alert(oStringObject.slice("3, -4")); //輸出 "lo w"
alert(oStringObject.substring("3, -4")); //輸出 "hel"
substr()
抽取指定數目的字元:
var str="Hello world!";
var n=str.substr(2,3)//llo
toLowerCase()
toLocaleLowerCase()
toUpperCase()
toLocaleUpperCase()
前兩種方法用於把字串轉換成全小寫的,後兩種方法用於把字串轉換成全大寫的。
toLowerCase()和toUpperCase()方法是原始的,是以java.lang.String中相同方法為原型實現的。
toLocaleLowerCase()和toLocaleUpperCase()方法是基於特定的區域實現的(與localeCompare()方法相同)。
在許多區域中,區域特定的方法都與通用的方法完全相同。不過,有幾種語言對Unicode大小寫轉換應用了特定的規則(例如土耳其語),因此必須使用區域特定的方法才能進行正確的轉換。
var oStringObject = new String("Hello World");
alert(oStringObject.toLocaleUpperCase()); //輸出 "HELLO WORLD"
alert(oStringObject.toUpperCase()); //輸出 "HELLO WORLD"
alert(oStringObject.toLocaleLowerCase()); //輸出 "hello world"
alert(oStringObject.toLowerCase()); //輸出 "hello world"
instanceof 運算子
instanceof運算子與typeof運算子相似,用於識別正在處理的物件的型別。與typeof方法不同的是,instanceof方法要求開發者明確地確認物件為某特定型別。例如:
var oStringObject = new String("hello world");
alert(oStringObject instanceof String); //輸出 "true"
Array物件靜態方法
isArray(obj)
靜態方法
功能:用來判斷一個值是否為陣列
var arr = [10,'Hello', “Jhone”,{name:”zhangsan”,age:26}]
console.log(typeof arr) // object
console.log(Array.isArray(arr)) //true
Array物件例項方法
valueOf()
功能:返回陣列本身
var a = [1,2,3]
a.valueOf()
toString()
功能:返回陣列的字串形式
var a = [1,2,3]
a.toString()//”1,2,3”
push(obj)
功能:在陣列的末端新增一個或多個元素,並返回新增後的陣列的長度
var a = []
a.push(‘Hello’)//1
pop()
功能:刪除陣列的最後一個元素,並返回該元素
var a =[1,2,3]
a.pop()//3
join()
功能:以引數作為分隔符,將所有陣列成員組成一個字串返回。
var a =[1,2,3]
a.join() //”1,2,3”
注:如果不提供引數,預設用逗號分隔。
concat()
功能:將新陣列的成員,新增到原陣列的尾部,然後返回一個新陣列
var a = [1,2,3]
var b = ['java','python']
a.concat(b)//[1,2,3,'java','python']
shift()
功能:刪除陣列的第一個元素,並返回該元素
var b = ['java','python']
b.shift() // java
unshift()
功能:在陣列的第一個位置新增元素,並返回新增新元素後的陣列長度
var b = ['java','python']
b.unshift('C') //3
reverse()
功能:顛倒陣列中元素的順序,返回改變後的原陣列
var b = ['java','python','c']
b.reverse() //['c','python','java']
slice()
功能:返回陣列指定位置的成員組成的新陣列,原陣列不變
var a = [1,2,3,4,5,6]
a.slice(3) //[4,5,6]
a.slice(2,4) //[3,4]
注:它的第一個引數為起始位置(從0開始),第二個引數為終止位置(但該位置的元素本身不包括在內)。如果省略第二個引數,則一直返回到原陣列的最後一個成員。
splice()
功能:刪除元素,返回被刪除的元素
引數:第一個引數是刪除的起始位置,第二個引數是被刪除的元素個數。如果後面還有更多的引數,則表示這些就是要被插入陣列的新元素。
var a = [1,2,3,4,5,6]
a.splice(2) // [3, 4, 5, 6]
sort()
功能:對陣列元素進行排序
var a = [1,7,3,2,4,6]
a.sort()//[1,2,3,4,6,7]
注:sort方法不是按照大小排序,而是按照對應字串的字典順序排序。
map()
功能:對陣列的所有成員依次呼叫一個函式,根據函式結果返回一個新陣列
var a = [1,2,3,4,5,6]
var b = a.map(function(e){
return e+3
})
結果:[4,5,6,7,8,9]
forEach()
功能:遍歷陣列中的所有元素
var arr = ['Jack','Tomth','Green','Jhon']
arr.forEach(function(e){
console.log(e)
})
結果:Jack , Tomth , Green , Jhon
區別:
- map方法必須保證它裡面的元素可以被索引到,即元素值不是:null, undefined,空位。
2.froEach方法獲取除了空位的所有元素。
-
map方法有返回值,而forEach方法沒有返回值。
4.此方法的返回值與原陣列沒有影響。
filter()
功能:對所有成員呼叫一個測試方法,返回結果為true的成員組成的新陣列
var score=[65,71,80,73,90,43,52]
var qualiscore = score.filter(function(e){
return e > 60;
})
結果:[65, 71, 80, 73, 90]
其他方法:
some()
對所有元素呼叫一個測試函式,只要有一個元素通過該測試,就返回true,否則返回false
every()
對所有元素呼叫一個測試函式,只有所有元素通過該測試,才返回true,否則返回false
var qualiscore = score.filter(function(e){
return e > 60;
})
結果: true
reduce()
從左到右依次處理陣列的每個元素,最終累計為一個值。
reduceRight()
從右到左依次處理陣列的每個元素,最終累計為一個值。
reduce方法的第一個引數是一個處理函式。該函式接受四個引數,分別是:
用來累計的變數(即當前狀態),預設值為0
陣列的當前元素
當前元素在陣列中的序號(從0開始)
原陣列
target屬性值
值 | 描述 |
---|---|
_blank | 在新視窗中開啟被連結文件。 |
_self | 預設。在相同的框架中開啟被連結文件。 |
_parent | 在父框架集中開啟被連結文件。 |
_top | 在整個視窗中開啟被連結文件。 |
framename | 在指定的框架中開啟被連結文件。 |
window物件
內建屬性:
window.innerHeight //視窗的文件顯示高度
window.innerWidth //視窗的文件顯示寬度
window.outerHeight //視窗的外部高度,包含工具條和滾動條
window.outerWidth //視窗的外部寬度,包含工具條和滾動條
window.closed //視窗是否被關閉
window.name // 視窗的名稱
window.status //視窗狀態列的文字
內部方法:
window.open() 開啟新視窗
window.close() 關閉當前視窗
window.moveTo() 移動視窗
window.resizeTo() 調整視窗尺寸
window.print() 列印當前視窗中的內容
方法
window.open(URL,name,specs,replace)
注:
URL:可選,開啟指定頁面的URL地址
name:可選,target屬性值或視窗名稱
specs:可選,用逗號分隔的專案列表
replace:可選,裝載到視窗的 URL 是在視窗的瀏覽歷史中建立一個新條目,還是替換瀏覽歷史中的當前條目
例: windows.open('https://www.baidu.com')
window.moveTo(x,y)
注:
x: 必填,X軸座標
y: 必填,Y軸坐
例: windows.moveTo(0,0)
window.resizeTo(w,h)
注:
w: 必填,視窗的寬度,以畫素為單位
h: 必填,視窗的高度,以畫素為單位
例:window.resizeTo(500,300)
window子物件
screen
Screen物件包含使用者螢幕的資訊,window.screen 在編寫程式碼時,前面的window可以不用寫。screen 物件的屬性有:
screen.availHeight 返回螢幕的高度(不包括Windows工作列)
screen.availWidth 返回螢幕的寬度(不包括Windows工作列)
screen.colorDepth 返回目標裝置或緩衝器上的調色盤的位元深度
screen.height 返回螢幕的總高度
screen.pixelDepth 返回螢幕的顏色解析度(每象素的位數)
screen.width 返回螢幕的總寬度
例:console.log(screen.availWidth) // 1366
location
location物件是window物件的一部分,包含的當前URL的資訊。物件屬性:
location.host 主機名和埠
location.hostname 主機名
location.href 完整的URL
location.pathname 路徑名
location.port 埠號
location.protocol 協議名
location.search 查詢部分
物件方法:
location.assign() 載入一個新文件
location.reload() 重新載入當前文件
location.replace() 用新文件替換當前文件
例:
location.assign('http://www.baidu.com')
history
history 物件包含使用者訪問過的URL。物件屬性:
history.length 歷史列表中的網址數
物件方法:
history.back() 載入歷史記錄列表中的上一個URL
history.forward() 載入歷史記錄列表中的下一個URL
history.go() 載入歷史記錄列表中的某個具體頁面
Navigator
navigator物件包含有關訪問者瀏覽器的資訊。物件屬性:
appCodeName 瀏覽器程式碼名
appName 瀏覽器名稱
appVersion 瀏覽器的平臺和版本資訊
cookieEnabled 是否啟用cookie的布林值
platform 瀏覽器的作業系統平臺
userAgent 客戶機發送伺服器的user-agent頭部值
警告:來自navigator 物件的資訊具有一定的誤導性,因為:1.navigator 的資料可以被瀏覽器使用都更改;2.瀏覽器無法報告晚於瀏覽器釋出的新作業系統;3.一些瀏覽器對測試站點會識別錯誤。
彈窗
警告框
警告框常用於確保使用者可以得到某些資訊。
語法:alert(“Hello JavaScript!”)
注意:警告框中無法輸出HTML元素
確認框
確認框通常用於驗證是否接受使用者操作。當用戶點選確認,確認框返回true;如果點選取消,確認框返回false。
語法: confirm('你確定此項操作嗎?')
提示框
提示框經常用於提示使用者在進入頁面前輸入某個值。當提示框出現後,使用者需要輸入靶標個值,然後點選確認或取消按鈕才能繼續操作。如果使用者點選確認,那麼返回使用者的輸入值;如果使用者點選取消,返回null。
語法: prompt('請輸入您的編號:')
計時
setInterval()
功能:間隔指定的毫秒資料重複地執行指定的程式碼(多次)
語法:
setInterval(function,milliseconds);
例:
var hello = setInterval(function(){alert('Hello')},2000)
結果:每隔2秒彈出 'Hello'
注:
1.此方法在呼叫時會返回一個序列號
2.一般情況需要獲取此返回值,以便在適當的時候停止此事件。
停止:
clearInterval(hello);
setTimeout()
間隔指定的毫秒數後執行指定的程式碼(一次)
語法:
setTimeout(function,milliseconds)
例:
var msg = setTimeout('console.log(“Hello”)',3000)
結果:在3秒後在控制檯輸出Hello 字串
停止:
clearTimeout(msg)