使用指定构造器和参数列表构造实例

给定构造函数和参数列表,求构造实例

/** * Note: This function uses window.eval, * which means the function is not available in strict mode */function newInstance(constrcutor,args){var length=args.length;var cacheKey="$"+length;var f=newInstance[cacheKey];if(!f){var values=new Array(length);for(var i=0;i<length;i++){values[i]="arguments["+i+"]";}f=eval("(function(){return new this("+values.join(",")+");})");newInstance[cacheKey]=f;}return f.apply(constrcutor,args);}/** * @example */var values=[2015,4,14,9,17,4,5];var date=newInstance(Date,values);//same as new Date(2015,4,14,9,17,4,5);/** * @example */function Point(x,y){this.x=x;this.y=y;}var x_y=[0,0];var point=newInstance(Point,x_y);//same as new Point(0,0);

此功能的应用场景不广,但也算填补了JavaScript应用层的一个空白

,如果说,罗马是一座厚重和凝固的堡垒,

使用指定构造器和参数列表构造实例

相关文章:

你感兴趣的文章:

标签云: