DDR爱好者之家 Design By 杰米

typeof操作符:返回字符串,可能是“undefined”,“boolean”,“ string”,“number”,“object”,“function”中的一种,所以不能判断数组。

NaN(Not a Number):用法NaN(val)如果val能被转化成一个数就返回false,否则返回true。

parseInt(val,way)其中way可以是2,4...就是要按照这个进制来转化,返回number类型,num.toString(way)同理,只不过返回string类型。

object类型有一个hasOwnProperty(name)来判断当前对象是在实例中还是原型中。

每个函数都有个arguments属性对象来记录它的参数,相当于一个参数的数组,用argumentscallee可以递归。

unshift方法可以从前端向数组推入两个元素并返回长度,用unshift和pop可以反向模拟队列。

sort(compare),其中compare(val1,val2)方法当val1在val2前面返回-1,后面返回,0好像是不变。

对数组操作用splice函数,splice(a1,a2,a3......)a1,a2必填a1表示起始位置,a2表示要删除的项数,后面的参数表示从该位置要插入的新值。

indexOf返回一个val在数组中的位置,lastindexOf()从后面开始数。

数组的迭代方法:every()每个值都返回true才返回true,filter()返回所有返回true元素的数组,forEach()只是运行函数,没有返回,map()返回函数调用结果组成的数组,some()与every相对,若有一个返回ture则返回true。

举例:var everyRes = number.every(function(item,index,array){return item>2 ;}) ;//item,index,array三个参数是必填的。

数组的归并: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区别第一个是this(上下文对象)。

var obj =eval("("+data+")")来转化json,JSON.parse(data)也可以,两者的区别是eval相当于是把内容当做js来解析,而parse是只转化成obj对象。

与JSON.parse对应的是JSON.stringify方法,来把obj变成json

判读一个对象是不是数组:Object.prototype.toString.call(o) == '[object Array]' ;

如何用用continue跳出两层循环(对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.jb51.net"
} ;
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++ ;
              }
         }
        }
    }
}) ;

以上就是小编为大家带来的js学习阶段总结(必看篇)的全部内容了,希望大家多多支持脚步之家。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米