首页 > 代码库 > javascript技巧

javascript技巧

1、作用域安全的构造函数

function Person(name,age){if(this instanceof Person){this.name=name;this.age=age;this.getInfo=function (){};}else{new Person(name,age);}}

 


```
2、函数柯里化
//使用闭包返回一个函数,函数的参数是外部函数传递+内部自身函数的参数,将内外函数的参数进行了合并。
```

var curFun=curry(fn,1,2,3,4,5);curFun(); //15function curry(fn){var outerArg=Array.prototype.slice.call(arguments,1);return function (){var innerArg=Array.prototype.slice.call(arguments);var args=outerArg.concat(innerArg);fn.apply(null,args);};}function fn(){var len=arguments.length;var sum=0;for(var i=0;i<len;i++){sum=sum+arguments[i];}return sum;}

 

javascript技巧