js學(xué)習(xí)階段總結(jié)(必看篇)
typeof操作符:返回字符串,可能是“undefined”,“boolean”,“ string”,“number”,“object”,“function”中的一種,所以不能判斷數(shù)組。
NaN(Not a Number):用法NaN(val)如果val能被轉(zhuǎn)化成一個數(shù)就返回false,否則返回true。
parseInt(val,way)其中way可以是2,4...就是要按照這個進(jìn)制來轉(zhuǎn)化,返回number類型,num.toString(way)同理,只不過返回string類型。
object類型有一個hasOwnProperty(name)來判斷當(dāng)前對象是在實(shí)例中還是原型中。
每個函數(shù)都有個arguments屬性對象來記錄它的參數(shù),相當(dāng)于一個參數(shù)的數(shù)組,用argumentscallee可以遞歸。
unshift方法可以從前端向數(shù)組推入兩個元素并返回長度,用unshift和pop可以反向模擬隊(duì)列。
sort(compare),其中compare(val1,val2)方法當(dāng)val1在val2前面返回-1,后面返回,0好像是不變。
對數(shù)組操作用splice函數(shù),splice(a1,a2,a3......)a1,a2必填a1表示起始位置,a2表示要刪除的項(xiàng)數(shù),后面的參數(shù)表示從該位置要插入的新值。
indexOf返回一個val在數(shù)組中的位置,lastindexOf()從后面開始數(shù)。
數(shù)組的迭代方法:every()每個值都返回true才返回true,filter()返回所有返回true元素的數(shù)組,forEach()只是運(yùn)行函數(shù),沒有返回,map()返回函數(shù)調(diào)用結(jié)果組成的數(shù)組,some()與every相對,若有一個返回ture則返回true。
舉例:var everyRes = number.every(function(item,index,array){return item>2 ;}) ;//item,index,array三個參數(shù)是必填的。
數(shù)組的歸并:reduce和reduceRight(),舉例:var sum = values.reduce(function(prev,cur,index,array){return prev+cur;}) ;prev代表前一個,cur代表后一個。
Date類型:var date = new Date(Date.parse("May 25,2004")); var date = new Date(Date.UTC(2015,4,5,17,55,50));
call和apply區(qū)別第一個是this(上下文對象)。
var obj =eval("("+data+")")來轉(zhuǎn)化json,JSON.parse(data)也可以,兩者的區(qū)別是eval相當(dāng)于是把內(nèi)容當(dāng)做js來解析,而parse是只轉(zhuǎn)化成obj對象。
與JSON.parse對應(yīng)的是JSON.stringify方法,來把obj變成json
判讀一個對象是不是數(shù)組:Object.prototype.toString.call(o) == '[object Array]' ;
如何用用continue跳出兩層循環(huán)(對break也適用):
var num = 0 ; outer: for(var i=0;i<10;i++) for(var j=0;j<10;j++) { if(i==5&&j==5) { continue outermost ; } num++ ; } alert(num);//95
with語句:
var obj = { search : "st" , name : "lala", url : "chabaoo.cn" } ; with(pbj){ var a = search ; var b = name ; var c = url ; }
用
Object.defineProperty(obj,"key",{
configurable:true,
value:"value"
});
這樣可以讓對象的屬性只讀。
用Object.defineProperties可以一次添加多個屬性
Object.defineProperties(book,{ _year:{ value:2004 }, edition:{ value:1 }, year:{ get:function(){ return this._year ; } set:function(newValue){ if(newValue>2004) { this._year = newValue ; edition++ ; } } } } }) ;
以上就是小編為大家?guī)淼膉s學(xué)習(xí)階段總結(jié)(必看篇)的全部內(nèi)容了,希望大家多多支持腳步之家。
相關(guān)文章
純JavaScript代碼實(shí)現(xiàn)文本比較工具
之前項(xiàng)目需求需要寫一個純js文本比較工具,在此小編把代碼分享在腳本之家平臺供大家參考2016-02-02JS實(shí)現(xiàn)數(shù)組去重,顯示重復(fù)元素及個數(shù)的方法示例
這篇文章主要介紹了JS實(shí)現(xiàn)數(shù)組去重,顯示重復(fù)元素及個數(shù)的方法,涉及javascript數(shù)組遍歷、統(tǒng)計(jì)、計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下2019-01-01JS生態(tài)系統(tǒng)加速模塊解析賦能性能優(yōu)化探索
這篇文章主要為大家介紹了JS生態(tài)系統(tǒng)加速模塊解析賦能性能優(yōu)化探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01JavaScript Cookie 直接瀏覽網(wǎng)站分網(wǎng)址
2009-12-12javascript中xml操作實(shí)現(xiàn)代碼
好久沒寫了。感覺今時(shí)今日,HTML5 還依然只是一種玩票的東東。但愿 w3c 的標(biāo)準(zhǔn)可以早一點(diǎn)出臺,不要讓各種瀏覽器的兼容問題和支持程度搞死2011-11-11跟我學(xué)習(xí)javascript的定時(shí)器
跟我學(xué)習(xí)javascript的定時(shí)器,告訴大家具體的使用方法,并向大家提出了一個消息要求,制作一個定時(shí)器,有沒有朋友感興趣,挑戰(zhàn)一下2015-11-11給所有的超級練級都加上onmousemove時(shí)間的js代碼
給所有的超級練級都加上onmousemove時(shí)間的js代碼...2007-08-08