<b>獲取樣式:</b>
封裝了一個(gè)獲取非行間樣式:
封裝: 就是把代碼包裹起來(lái)
特點(diǎn):
a). 通用性
b). 方便
function getStyle(obj,name) {
return obj.currentStyle ? obj.currentStyle[name] : getComputedStyle(obj,false)[name];
}
<b>設(shè)置樣式:</b>
a). class -> oDiv.className='xx'
b). style -> oDiv.style.樣式='xxx'
其他方式:
cssText: -> 批量設(shè)置樣式
也是操作的行間的樣式
字符串小方法(函數(shù))
<b>1. str.charAt(索引值);</b>
獲取字符串中的某一個(gè)?
var str = 'abc';
str.charAt(索引值);
返回:小字符串
<b>2. str.indexOf(小字符串)</b>
在字符串中找某一個(gè)小字符串的位置
var str = 'welcome';
str.indexOf(小字符串)
返回:數(shù)字
<strong>特性:</strong>
a). 找到之后不會(huì)繼續(xù)往下找
b). 找不到就返回-1
c). 區(qū)分大小寫(xiě)
d). 從左往右找
e). 找多個(gè)小字符串會(huì)返回第一個(gè)匹配字符的位置
eg: 判斷瀏覽器類型
UA: window.navigator.userAgent
Chrome:
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36
FF:
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0
IE7:
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; InfoPath.3)
在window.navigator.userAgent下找相對(duì)應(yīng)的關(guān)鍵詞
<b>3. str.indexOf(小字符串)</b>
找小字符串在整個(gè)字符串中的位置,從右往左找
返回:數(shù)字
特性:
a). 找到之后不會(huì)繼續(xù)往下找
b). 找不到就返回-1
c). 區(qū)分大小寫(xiě)
d). 從右往左
e). 找多個(gè)小字符串會(huì)返回第一個(gè)匹配字符的位置
<b>4. str.substring(開(kāi)始位置,結(jié)束位置)</b>
var str = 'width';
截取字符串
str.substring(開(kāi)始位置,結(jié)束位置);
*** 包含開(kāi)始位置,但是不包含結(jié)束位置
str.substring(開(kāi)始位置)
從開(kāi)始位置一直截取到最后
eg :
截取擴(kuò)展名:
a.txt.js.html.doc
a). 找最后一個(gè) . 出現(xiàn)的一個(gè)位置
b). 從最后一個(gè)點(diǎn)的位置+1 開(kāi)始截取,一直截取到最后
<b>5. str.split(切割的規(guī)則);</b>
切割字符串
把字符串變成數(shù)組
返回:數(shù)組
如果沒(méi)有找到切割規(guī)則,原樣輸出到一個(gè)數(shù)組中,長(zhǎng)度是1
<b>6. 大小寫(xiě)轉(zhuǎn)換:</b>
var str = 'width';
轉(zhuǎn)大寫(xiě): -> 'WIDTH'
str.toUpperCase();
var str = 'WIDTH';
轉(zhuǎn)小寫(xiě): -> 'width'
str.toLowerCase();
<b>字符串的比較(一般沒(méi)什么用,知道就行)</b>
'apple' 'banana'
1. 英文:
按照字典序
a -> 最小
z -> 最大
先比較第一個(gè),如果相等會(huì)依次比較下去
2. 數(shù)字:
a). 一個(gè)數(shù)字,一個(gè)字符串的數(shù)字
先做隱式轉(zhuǎn)化,在做比較
b). 兩個(gè)字符串的數(shù)字比較
先比較第一個(gè),如果相等會(huì)依次比較下去
3. 漢字:
蒙圈
Unicode 排序
數(shù)組小方法(函數(shù))
怎么定義一個(gè)數(shù)組:
a). var arr = [1,2,3]; √
b). var arr = new Array(1,2,3);
小問(wèn)題:當(dāng)new 一個(gè)數(shù)組內(nèi)容為一個(gè)數(shù)字的時(shí)候他返回的就是他的長(zhǎng)度為該數(shù)字
var arr = new Array(3); 數(shù)組的長(zhǎng)度是3
長(zhǎng)度 : arr.length
訪問(wèn): arr[下標(biāo)]
添加:
a). push(東西) -> 往數(shù)組的最后面添加一項(xiàng)
b). unshift(東西) -> 往數(shù)組的最前面添加一項(xiàng)
返回:新數(shù)組的長(zhǎng)度
刪除:
a). pop(); -> 從數(shù)組的最后面刪除一項(xiàng)
返回刪除的東西
b). shift(); -> 從數(shù)組的最前面刪除一項(xiàng)
返回刪除的東西
萬(wàn)能操作:
arr.splice(開(kāi)始位置,刪除個(gè)數(shù),元素1,元素2...);
添加:
var arr = [1,2,3,4]
在 1 的后面添加 'a' 和 'b'
arr.splice(1,0,'a','b')
刪除:
var arr = [1,2,3,4];
刪除 2,3
arr.splice(1,2);
修改:先刪除在添加
var arr = [1,2,3,4];
把 2 改成 8,88,888
arr.splice(1,1,8,88,888);
splice模擬上面的方法:
a). splice模擬push方法:
arr.splice(arr.length,0,元素);
b). splice模擬unshift方法:
arr.splice(0,0,元素);
c). splice模擬pop方法:
arr.splice(arr.length-1,1);
d). splice模擬shift方法:
arr.splice(0,1);
字符串轉(zhuǎn)數(shù)組:
str.split(切割的規(guī)則);
數(shù)組轉(zhuǎn)字符串:
var arr = [1,2,3,4];
arr.join('連接的規(guī)則');
數(shù)組拼接:
arr.concat(數(shù)組)
var arr = [1,2,3];
var arr2 = [4,5,6];
arr.concat(arr2....);
var arr = [1,2,3,4,5];
數(shù)組反轉(zhuǎn):
a). arr.reverse();
b). 循環(huán)pop
數(shù)組排序:
arr.sort();
var arr = ['banana','apple','width','color'];
a). 字母 -> 按照字典序
var arr = ['11','12','333','231'];
b). 字符串?dāng)?shù)字 -> 按照首字母大小
var arr = [1,2,11,23,123,5];
c).arr.sort();
高級(jí)排序:
arr.sort(function(n1,n2){
n1 > n2
n1 < n2
n1 = n2
});
// 從小到大
arr.sort(function(n1,n2){
return n1 - n2;
});
// 從大到小
arr.sort(function(n1,n2){
return n2 - n1;
});
關(guān)于數(shù)組注意點(diǎn):
a). 數(shù)組里面一般可以放任意數(shù)據(jù)類型的東西,但是建議大家只放一種數(shù)據(jù)類型
b). 數(shù)組的長(zhǎng)度length, 還可以修改
怎么快速清空一個(gè)數(shù)組:
a). arr.length = 0
b). arr.splice(0,arr.length)
c). 循環(huán)pop
d). arr = [];