數(shù)值number
字符串string
布爾型boolean
null空
undefined 沒(méi)有值
typeof檢測(cè)數(shù)據(jù)類(lèi)型
Number()轉(zhuǎn)換數(shù)值
parseInt()轉(zhuǎn)換數(shù)字
parseFloat()轉(zhuǎn)換小數(shù)
toString(進(jìn)制數(shù))
Boolean()轉(zhuǎn)換布爾型
isNaN()是,不是一個(gè)數(shù)字
prompt輸入框
alert彈出框
confirm詢(xún)問(wèn)框
if else 條件語(yǔ)句
switch case break default 分支語(yǔ)句
while 循環(huán)語(yǔ)句
do while 先執(zhí)行
條件?成立執(zhí)行:不成立執(zhí)行 三元運(yùn)算符
for 循環(huán)
break終止循環(huán)
continue結(jié)束本次循環(huán)
return 函數(shù)返回值
objname='Jack'添加對(duì)象成員
objname['name']='jack'點(diǎn)語(yǔ)法添加
delete obj.name刪除對(duì)象成員
delete obj['name']刪除對(duì)象成員 點(diǎn)語(yǔ)法
obj.name 對(duì)象查找
obj['jack']點(diǎn)語(yǔ)法對(duì)象查找
for in 循環(huán) 用來(lái)遍歷對(duì)象
數(shù)組
push 添加放在最后
pop刪除最后
unshift 添加最前
shift刪除第0個(gè)
concat 拼接 concat拼接字符串
reverse反轉(zhuǎn)數(shù)組
splice截取多少個(gè)
slice截取的索引 slice 截取字符串
sort數(shù)組排序
indexof()內(nèi)容索引的位置 indexof查找字符位置索引
forEach遍歷數(shù)組
reduce((prev//上一次結(jié)果,currect//當(dāng)前值){return 結(jié)果},0//初始值)
for of循環(huán) es6新增循環(huán) 不能遍歷對(duì)象
map映射數(shù)組返回值新數(shù)組
filter把滿(mǎn)足條件的篩選放到新數(shù)組
some遍歷滿(mǎn)足條件返回true
every所有滿(mǎn)足才返回true
字符串操作
indexOf查找字符位置索引
charAt()對(duì)應(yīng)索引的字符串
charCodeAt()Ascall編碼
substring截取字符串開(kāi)始0索引 結(jié)束索引
substr截取字符串 多少個(gè)
concat拼接字符串
slice 截取字符串結(jié)束索引
toUpperCase字符串該大寫(xiě)
toLowerCase改成小寫(xiě)
split()用什么字符切割放在數(shù)組中
replace(把什么,替換成什么)
sort(function(a,b)){returna-b)}) 排序
join數(shù)組用字符連接成字符串
數(shù)字方法
Math.random隨機(jī)數(shù)0-0.999
Math.round四舍五入
Math.ceil向上取整
Math.floor向下取整
Math.pow取冪
Math.sprt開(kāi)平方根
Math.abs取絕對(duì)值
Math.max取最大值
Math.min取最小值
Math.PI取PI值
toFixed(保留幾位小數(shù))
時(shí)間
new Date 獲取指定時(shí)間對(duì)象不填是當(dāng)前
.getFullYear()獲取年份
.getMonth月
.getDate日
.getHours小時(shí)
getMinutes分鐘
getSeconds秒
getDay第幾天
getTime時(shí)間戳
set設(shè)置年月日小時(shí)分鐘秒鐘時(shí)間戳
函數(shù)名.call()改變this指向
函數(shù)名.apply()改變this指向
函數(shù)名.bind()返回值改變好了的this指向函數(shù)
瀏覽器屬性:
window.innerHeight瀏覽器高
window.innerWidth瀏覽器寬
document.documentElement.clientWidth不含滾動(dòng)條的窗口寬
document.documentElement.clientHeight不含滾動(dòng)條的窗口高
window.location.href跳轉(zhuǎn)頁(yè)面 讀寫(xiě)
location.relod重新加載頁(yè)面
location.open(新的頁(yè)面地址)
location.close()關(guān)閉當(dāng)前頁(yè)面
history.back歷史回退
histor.forward歷史前進(jìn)
history.go()進(jìn)行歷史記錄跳轉(zhuǎn) 數(shù)值
元素.addEventListener標(biāo)準(zhǔn)瀏覽器 綁定事件
元素.removeEventListener('事件類(lèi)型',事件處理函數(shù))移除綁定事件
attachEvent IE低版本瀏覽器
瀏覽器事件:
onload加載完畢后執(zhí)行
onscroll滾動(dòng)事件
onresize瀏覽器尺寸改變
docunmentElement(||body).scrollTop瀏覽器卷去的高度
鼠標(biāo)事件
click 單機(jī)
dblclick 雙擊
mouseover 鼠標(biāo)移入 自帶事件傳播
mouseout 鼠標(biāo)移出
mouseenter 鼠標(biāo)移入 阻止事件的傳播
mouseleave 鼠標(biāo)移出
mousemove 鼠標(biāo)移動(dòng)
mousedown 鼠標(biāo)按下
mouseup 鼠標(biāo)抬起
contextmenu 右鍵
鍵盤(pán)事件
keydown 鍵盤(pán)按下
keyup 鍵盤(pán)抬起
keypress 鍵盤(pán)按下再抬起
表單事件
blur 失去焦點(diǎn)
focus 獲取焦點(diǎn)
change 文本框內(nèi)容改變 脫離是改變
input 文本框內(nèi)容改變
submit 表單提交 (專(zhuān)門(mén)給 form 標(biāo)簽使用的)
transitionend 過(guò)度結(jié)束的時(shí)候觸發(fā)
animationend 動(dòng)畫(huà)結(jié)束的時(shí)候觸發(fā)
selectstart選中事件
timeupdate 音樂(lè)視頻播放事件 1S4次
視頻元素.currentTime返回當(dāng)前播放時(shí)間
觸摸事件
touchstart開(kāi)始觸摸
touchmove觸摸移動(dòng)
touchend觸摸結(jié)束
console.dir()打印詳細(xì)信息
SetTimeout延時(shí)定時(shí)器
setInterval間隔定時(shí)器
clearTimeout()關(guān)閉定時(shí)器
獲取頁(yè)面元素
document.documentElenent獲取html
document.head 獲取head
document.body獲取Body
getElementById通過(guò)Id獲取元素 只有一個(gè)
getElementsByClassName通過(guò)class名獲取元素 得到偽數(shù)組
getElementsByTagName通過(guò)標(biāo)簽名獲取元素
getElementsByName通過(guò)元素name獲取元素
querySelector通過(guò)書(shū)寫(xiě)方式獲取元素
querySelectorAll獲取滿(mǎn)足條件的所有元素
元素.childNodes獲取一個(gè)元素下的所有子節(jié)點(diǎn)
元素.children獲取元素下所有的元素節(jié)點(diǎn)
元素.firstChild元素下第一個(gè)子節(jié)點(diǎn)
元素.firstElementChild獲取第一個(gè)元素節(jié)點(diǎn)
元素.lastChild獲取元素下最后一個(gè)子節(jié)點(diǎn)
元素.LastElementChild獲取元素下最后一個(gè)元素節(jié)點(diǎn)
元素.previousSibling獲取元素的上一個(gè)兄弟節(jié)點(diǎn)
元素.previousElementSibing獲取元素的上一個(gè)兄弟元素節(jié)點(diǎn)
元素.nextSibling獲取元素的下一個(gè)兄弟節(jié)點(diǎn)
元素.nexElementSibling獲取元素的下一個(gè)兄弟的元素節(jié)點(diǎn)
元素.attributes獲取元素的所有屬性節(jié)點(diǎn)
.getAttribute(屬性名)獲取元素的屬性值
.setAttribute('設(shè)置的屬性名',設(shè)置的屬性值)
removeAttribute(刪除的屬性名)
innerHTML完全覆蓋式替換內(nèi)部結(jié)構(gòu)
innerText替換文本內(nèi)容
.style獲取行內(nèi)樣式或?qū)χ颠M(jìn)行增刪改查
window.getComputedStyle(獲取的元素)||元素.currentStyle獲取非行內(nèi)樣式
class.name讀取類(lèi)名或者寫(xiě)入新的類(lèi)名
document.createElement(創(chuàng)造標(biāo)簽)
父元素.appendChild(添加的子節(jié)點(diǎn))
父元素.inserBefore(插入的元素,哪一個(gè)元素前)
父元素.replaceChild(新節(jié)點(diǎn),舊節(jié)點(diǎn))替換
父元素.removeChild(刪除的節(jié)點(diǎn))
元素.cloneNode(true)克隆節(jié)點(diǎn)
document.createDocumentFragment()文檔碎片創(chuàng)建筐
clientWidth clientHeight邊框內(nèi)的區(qū)域
offsetwidth offsetheight含border的邊框區(qū)域
offsettop offsetleft 定位父級(jí)的左上角距離
offsetX offsetY 點(diǎn)擊元素的左上角坐標(biāo)點(diǎn)
clientX clientY 可視窗口的左上角坐標(biāo)點(diǎn)
pageX pageY 文檔流的左上角
event=event||window.event獲取事件對(duì)象
var target=e.target||e.srcElement .tagName標(biāo)簽名 獲取觸發(fā)事件的元素
IE e.cancelBubble=ture ||e.stopPropagation 取消事件冒泡
IE e.returnValue=false ||e.PreventDefault() || return false 取消默認(rèn)行為
//正則表達(dá)式
new RegExp('')創(chuàng)建正則
.非/n換行的任意字符
\轉(zhuǎn)譯
\s空格
\S需要非空格
\d數(shù)字
\B非數(shù)字
\w數(shù)字字母下劃線(xiàn)
\W非數(shù)字字母下劃線(xiàn)
^開(kāi)始$結(jié)尾
+1到正無(wú)窮
*0到正無(wú)窮
?0或者1次
{n}n次
{n,}至少n次
{n,m}至少n次,最多m次
()集合可以單獨(dú)捕獲
[]任意選擇的集合
[^]表示非任意選擇集合
|占位一般和小括號(hào)一起使用
-一般和中括號(hào)一起用,a-b 必須ASCII挨著的
正則表達(dá)式.test(字符串)檢測(cè)字符串
正則表達(dá)式.exec(捕獲的字符串)
g標(biāo)識(shí)全局 i不分大小寫(xiě)
var ze = new RegExp("^[0-9]+"+param+"[a-z]+$","g"); 動(dòng)態(tài)添加正則
字符串.search(正則)找符合條件的
字符串.match(正則)有g(shù)的時(shí)候。捕獲到每一個(gè)符合的內(nèi)容
字符串.replace(正則,替換內(nèi)容)
JSON.stringify(要轉(zhuǎn)換的對(duì)象或數(shù)組)
JSON.parse(JSON格式的字符串)
let const 變量
prototype函數(shù)自帶屬性
protot
Object.prototype.toString.call()或constructor構(gòu)造者 檢測(cè)數(shù)據(jù)類(lèi)型
面向?qū)ο? calss關(guān)鍵字 class類(lèi)名
constructor(){}構(gòu)造函數(shù)體
- 每一個(gè)函數(shù)天生自帶一個(gè)屬性,叫做 prototype, 是一個(gè)對(duì)象空間
- 每一個(gè)對(duì)象天生自帶一個(gè)屬性,叫做
__proto__,指向所屬構(gòu)造函數(shù)的 prototype - 每一個(gè)函數(shù)天生自帶的那個(gè) prototype 上有一個(gè) constructor 屬性,指向該構(gòu)造函數(shù)
-
當(dāng)一個(gè)對(duì)象沒(méi)有準(zhǔn)確的構(gòu)造函數(shù)來(lái)實(shí)例化的時(shí)候,那么他的所屬構(gòu)造函數(shù)是 Object
//
Es6繼承
extends 繼承
super( 參數(shù))
Object.defineProperty(你要給誰(shuí)添加,添加的key,配置項(xiàng){get(){return 'jack'}set(接收一個(gè)參數(shù)){捕獲你想改變的行為}}數(shù)據(jù)劫持
classList 每一個(gè)元素都有一個(gè)classList的屬性
add(您要添加的類(lèi)名)用來(lái)添加類(lèi)名的
remove(你要移除的類(lèi)名)用來(lái)移除類(lèi)名的
replace(你要替換的類(lèi)名,替換成什么)用來(lái)替換類(lèi)名的
toggle(你要切換的類(lèi)名)
數(shù)組去重set方法
new Set()
size方法和屬性
add(你要添加的成員)
delete(你要?jiǎng)h除的成員)
clear()把數(shù)據(jù)集合中的所有內(nèi)容全部刪除
has(你要判斷的數(shù)據(jù))
forEach(function(){})
...展開(kāi)
對(duì)象
1,set(成員的Key,成員的值)
2,get(獲取的成員名稱(chēng))
3,delete(你要?jiǎng)h除的成員名稱(chēng))
4,clear()用來(lái)清除該數(shù)據(jù)集合中的所有成員
5,forEach()
item拿到的是所有的value
index拿到的是所有的key
arr原始的Map數(shù)據(jù)集合
6,has()判斷該數(shù)據(jù)集合內(nèi)有沒(méi)有某一個(gè)數(shù)據(jù)成員
7,size
8,...展開(kāi)
獲取地址欄?后面部分window.location.search
獲取地址欄#后面部分window.location.hash
ecodeURI解碼中文
解構(gòu)
