排他思想
- 在同一屬性上, 設(shè)置全部變量的這一屬性清空, 當(dāng)前響應(yīng)事件的對象設(shè)置這一屬性
換膚進(jìn)一步封裝
隔行變色+排他思想
this 響應(yīng)事件的那個(gè)對象
- 元素事件的方法體中this一般代指事件源
- 定時(shí)器方法是window的方法, 所以定時(shí)器中的this代指window
- 一般如果想要在元素事件中使用this類似的功能, 可以在進(jìn)入函數(shù)后, 用一個(gè)變量例如self引用this代指的
自定義屬性
- 自定義屬性名可以隨意起, 但需要見聞知意
- 格式:
button.name = '第一個(gè)按鈕';
tab選項(xiàng)
- 自定義屬性的使用
- 獲取btn的索引值保存在自定義屬性中, 供顯示相應(yīng)盒子調(diào)用
- 排他思想的使用
- 每個(gè)btn在onclick事件中, 當(dāng)前按鈕排他設(shè)置類名, 盒子排他顯示(當(dāng)前顯示盒子的索引等于當(dāng)前點(diǎn)擊按鈕的索引)
數(shù)組的常用使用方法
- 函數(shù)從那幾個(gè)方面進(jìn)行學(xué)習(xí):
- 函數(shù)功能
- 參數(shù): 可選與必需
- 函數(shù)返回值是什么數(shù)據(jù)類型
數(shù)組對象的方法
-
concat()
連接兩個(gè)或者更多的數(shù)組, 并返回新數(shù)組- 原數(shù)組不變
- 參數(shù): 合并的數(shù)組
- 返回值: 合并后的新數(shù)組
- ps: map,filter,some,every等不改變原數(shù)組
-
arr.join()
: 元素通過指定的分隔符進(jìn)行分隔, 將當(dāng)前數(shù)組中的元素拼接成一個(gè)大字符串- 原數(shù)組不變
- 參數(shù): 可選. 分隔符默認(rèn)","
- 返回值: 字符串
//'123456'字符串轉(zhuǎn)換成'654321'
var str = '123456'
var change = str.split('').reverse();
var newStr = change.join('');
-
pop()
: 刪除并返回?cái)?shù)組最后一個(gè)元素- 功能: 刪除數(shù)組最后一個(gè)元素, 并把刪除元素返回
- 返回值:刪除元素
-
push()
: 向數(shù)組的末尾添加一個(gè)或更多元素, 返回新的長度功能: 向數(shù)組的末尾添加一個(gè)或更多元素, 并且默認(rèn)返回新的數(shù)組長度
參數(shù): 元素 數(shù)組
-
返回值: 返回?cái)?shù)組的長度
var a=[]; a.push('1111'); //添加了一個(gè)元素, 所以數(shù)組默認(rèn)返回值為1
-
shift()
: 刪除并返回?cái)?shù)組的第一個(gè)元素- 返回值: 刪除的第一個(gè)元素
- 會(huì)修改原數(shù)組
-
unshift()
: 向數(shù)組的開頭添加一個(gè)或更多元素, 并返回新的長度- 參數(shù): 添加元素 數(shù)組
- 返回值: 新的長度
- 會(huì)修改原數(shù)組
-
slice(start, end)
: 從某個(gè)已有的數(shù)組返回選定的元素- 功能: 從數(shù)組中取某幾個(gè)元素, 以新數(shù)組格式返回
- 參數(shù)取值: [start, end)
- start-必需. 從哪個(gè)索引開始選元素, 可用負(fù)值-1, 是倒數(shù)第一個(gè)元素
- end-可選. 從哪個(gè)索引結(jié)束, 取不到索引所在元素
- 返回值: 返回一個(gè)新的數(shù)組, 包含從start到end(不包含該元素)的數(shù)組
- 不會(huì)修改原數(shù)組
-
splice(index, howmany, item1, ..., itemX)
: 刪除元素, 并向數(shù)組添加新元素- 參數(shù):
- index-必需. 從哪個(gè)索引開始
- howmany-必需. 刪幾個(gè)元素
- items-可選. 添加新的元素, 相當(dāng)于做了替換功能
- 返回值: 返回刪除元素的新數(shù)組
- 會(huì)修改原數(shù)組
- 參數(shù):
-
sort(sortby)
: 對數(shù)組進(jìn)行排序處理- 參數(shù): sortby必需是個(gè)函數(shù)
- 可以做冒泡排序.
- 會(huì)修改原數(shù)組
-
reverse()
: 顛倒數(shù)組里的元素順序- 返回值: 操作的數(shù)組
- 會(huì)修改原數(shù)組
String對象方法
-
stringObject.charAt(index)
: 返回在指定位置的字符功能: 根據(jù)索引獲取索引對應(yīng)的字符
參數(shù): 必需. 索引
-
返回值: 獲取的字符
var str = 'hi'; str.charAt(1); //返回i
-
stringObject.concat()
: 連接字符串- 參數(shù): 拼接的字符串
- 返回值: 返回新的拼接的字符串
- 不修改原字符串
- 或者使用 + 法的隱形轉(zhuǎn)換
-
split(separator, howmany)
: 把字符串分隔為字符串?dāng)?shù)組- 參數(shù)
- separator-必需. 分隔符. 如果把空字符串("")作為separator, 會(huì)把字符串中所有字符拆成單獨(dú)的元素
- howmany- 可選. 指定新數(shù)組的長度
- 返回值: 新數(shù)組. 不修改原字符串
- 參數(shù)
stringObject.lastIndexOf(searchvalue, fromindex)
: 從后向前檢索字符串-
stringObject.indexOf(searchvalue, fromindex)
: 檢索字符串- 參數(shù)
- searchvalue-必需. 檢索的字符串. 區(qū)分大小寫
- fromindex-可選. 從哪個(gè)角標(biāo)開始搜索. 默認(rèn)從頭到尾搜索, 搜索到第一個(gè)為止.
- 返回值: 返回某個(gè)指定的字符串值在字符串中的首次位置. 沒搜索到, 返回-1.
- 參數(shù)
-
stringObject.slice(start, end)
: 提取字符串的片段, 并在新的字符串中返回被提取的部分- 參數(shù): 取值區(qū)間[start, end)
- start-從哪個(gè)索引開始去
- end-取到哪個(gè)索引為止, 取不到end索引字符
- 返回值: 截取字符組成的新的字符串
- 參數(shù): 取值區(qū)間[start, end)
-
substr(start, length)
: 從起始索引號提取字符串中指定數(shù)目的字符- 參數(shù): 從哪個(gè)索引開始取, 取多長
- 返回值: 截取的字符串, 不修改原字符串
-
substring(start, stop)
: 提取字符串中兩個(gè)指定的索引號之間的字符- 參數(shù): 都是非負(fù)整數(shù), 可以理解為取值區(qū)間[start, stop)
- start-必需. 從哪個(gè)索引開始取
- stop-可選. 到結(jié)束索引元素為止(不包括自身元素)
- 返回值: 返回截取的字符串, 不修改原字符串
- 參數(shù): 都是非負(fù)整數(shù), 可以理解為取值區(qū)間[start, stop)
toLowerCase()
: 把字符串轉(zhuǎn)換成小寫toUpperCase()
: 把字符串轉(zhuǎn)換成大寫應(yīng)用判斷文件上傳
定時(shí)器
- 分類: 一次性定時(shí)器, 延時(shí)定時(shí)器
-
setTimeout(code, millosec)
: 多少毫秒后, 執(zhí)行代碼-
參數(shù): 函數(shù)名, 延時(shí)的時(shí)間
var timer = setTimeout(function(){ alert("1秒后顯示的彈窗"); },1000); //銷毀定時(shí)器 clearTineout(timer)
注意: 延時(shí)定時(shí)器,不用之后要及時(shí)銷毀, 否則會(huì)造成內(nèi)容泄露
-
-
setInterval(code, millisec)
: 循環(huán)定時(shí)器-
參數(shù): 間隔一定時(shí)間執(zhí)行的代碼, 間隔時(shí)間(毫秒)
var num = 0; var timer = setInterval(fn,1000); function fn(){ console.log(num++); } //銷毀循環(huán)定時(shí)器 clearInterval(timer);
-