首页 > 代码库 > JS比较好用的一些方法搜集

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

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]

aaa

  toFixed()

    四舍五入

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

  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的方式巧妙地解决这个问题!

 

      

           

 

   map() (Jquery方法)

 jQuery.map(array,callback) 将一个数组中的元素转换到另一个数组中。作为参数的转换函数会为每个数组元素调用,而且会给这个转换函数传递一个表示被转换的元素作为参数。转换函数可以返回转换后的值、null(删除数组中的项目)或一个包含值的数组,并扩展至原始数组中。

参数
array (Array) : 待转换数组。callback (Function) : 为每个数组元素调用,而且会给这个转换函数传递一个表示被转换的元素作为参数。函数可返回任何值。另外,此函数可设置为一个字符串,当设置为字符串时,将 视为“lambda-form”(缩写形式?),其中 a 代表数组元素。如“a * a”代表“function(a){ return a * a; }”。

示例
将原数组中每个元素加 4 转换为一个新数组。

jQuery 代码:

$.map( [0,1,2], function(n){
return n + 4;
});
结果:

[4, 5, 6]

--------------------------------------------------------------------------------

原数组中大于 0 的元素加 1 ,否则删除。

jQuery 代码:

$.map( [0,1,2], function(n){
return n > 0 ? n + 1 : null;
});
结果:

[2, 3]

 eval:函数接收一个参数s,如果s不是字符串,则直接返回s。否则执行s语句。(eval不可能在全局空间内执行)