首页 > 技术文章 > JS比较好用的一些方法搜集

sunrise 2014-02-17 16:12 原文

JS比较好用的一些方法搜集

Math.ceil(x) -- 返回大于等于数字参数的最小整数(取整函数),对数字进行上舍入

Math.floor(x)--返回小于等于数字参数的最大整数,对数字进行下舍入

 

join() 

例:var a = ["a","b","c"]; 若要输出"a,b,c" 需要a.join(',') 用","将数组项连接

                                      若想输出"abc" 直接a.join('')

push()

方法将以新元素出现的顺序添加这些元素。如果参数之一为数组,那么该数组将作为单个元素添加到数组中。 

   例:var   a=[1,2,3,4]   a.push(5) ;  数组a将会有1,2,3,4,5 五个元素

   注意: push()参数可以是多个数值(param1,param,…paramN),但不能是对象

             var arr1 = [1, 3, 4];
             var arr2 = [3, 4, 5];

              如果用arr1.push(arr2) 数组arr1得到的是[1,3,4,[3,4,5]] 而不是[1,3,4,3,4,5]

             如果要得到[1,3,4,3,4,5] 用  Array.prototype.push.apply(arr1, arr2); 或arr1=arr1.concat(arr2) concat方法并不改变arr1本身

             但是可以arr1.push(5,6) 这样得到的是[1,3,4,5,6]

apply()

apply:方法能劫持另外一个对象的方法,继承另外一个对象的属性.

 Function.apply(obj,args)方法能接收两个参数
  obj:这个对象将代替Function类里this对象
  args:这个是数组,它将作为参数传给Function(args-->arguments)

 例: /*定义一个人类*/
        function Person(name, age) {
            this.name= name;
            this.ag= age;
        }
        /*定义一个学生类*/
        function Student(name, age, grade)
        {
            Person.apply(this, arguments); //this 为Student这个对象 arguments为传入的参数集合
            this.grade = grade;
        } 

 当我们创建对象   var object=new Student('aking',26,'one'); 此时执行Student 当执行到Person.apply(this, arguments);

这个时候Person中的this对象 将被student的对象代替并执行person方法 在Person方法体中 student对象.name="aking";

 student对象.age=26;

apply()妙用:Math.max(param1,param2,param3…)  ==>var max=Math.max.apply(null,array)

       Math.min(param1,param2,param3…)  ==>var min=Math.min.apply(null,array)

                  push(param1,param,…paramN)         ==>Array.prototype.push.apply(arr1,arr2); 
      一般在目标函数只需要n个参数列表,而不接收一个数组的形式([param1[,param2[,…[,paramN]]]]),可以通过apply的方式巧妙地解决这个问题!

toFixed()

    四舍五入

  例 :var  x=0.02345  x.toFixed(2)  结果为0.002  x=0.0564 结果为0.06

推荐阅读