几道js题的解答


题目来自: http://www.cnblogs.com/TomXu/archive/2012/02/10/2342098.html

原创答案,肯能和出题者的标准答案不同,但至少能实现目标。

 

 

 

  • 找出数字数组中最大的元素(使用Math.max函数)
Math.max.apply(Math, arr);
  • 转化一个数字数组为function数组(每个function都弹出相应的数字)
arr.map(function(xld){
return function(){return xld}
})
  •  给object数组进行排序(排序条件是每个元素对象的属性个数)
function count(o){var i = 0; for(var c in o){i++}return i};
arr.sort(function(a, b){return count(a) - count(b)})
  • 利用JavaScript打印出Fibonacci数(不使用全局变量)
function f(xld){ return xld < 2 ? 1 : f(xld - 1) + f(xld-2)}
  •     实现如下语法的功能:var a = (5).plus(3).minus(6); //2
Number.prototype.plus = function(xld){return this + xld};
Number.prototype.minus = function(xld){return this - xld};
  •     实现如下语法的功能:var a = add(2)(3)(4); //9
    function add(x){
    add.valueOf = add.toString = function(){return x}
    function add(y){ x+=y; return add}
    return add;
    }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM