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ù)都有個arguments屬性對象來記錄它的參數(shù),相當(dāng)于一個參數(shù)的數(shù)組,用argumentscallee可以遞歸。
unshift方法可以從前端向數(shù)組推入兩個元素并返回長度,用unshift和pop可以反向模擬隊列。
sort(compare),其中compare(val1,val2)方法當(dāng)val1在val2前面返回-1,后面返回,0好像是不變。
對數(shù)組操作用splice函數(shù),splice(a1,a2,a3......)a1,a2必填a1表示起始位置,a2表示要刪除的項數(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 : "www.dbjr.com.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)文章
JS實現(xiàn)數(shù)組去重,顯示重復(fù)元素及個數(shù)的方法示例
這篇文章主要介紹了JS實現(xiàn)數(shù)組去重,顯示重復(fù)元素及個數(shù)的方法,涉及javascript數(shù)組遍歷、統(tǒng)計、計算等相關(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-12