Javascript noob问题 - 以下哪项是最佳实践和性能友好,也欢迎任何其他建议.这是原始项目的最简单版本.将有20多个变量和10个以上的内部函数(例如:案例中的"过程").
方法1的优点是它不需要向函数发送参数,而是嵌入main函数内的所有函数(可能为Foo的每个实例重新生成所有内部函数).虽然方法2没有函数嵌套,但需要大量参数.请注意,Foo构造函数也会有多个实例.
方法1:
function Foo () {
var a = 1;
var b = 2;
var c = (a+b)/2;
var $element = $('#myElement');
var process = function (){
var x = a+b+c;
$element.css('left', x)
return x;
}
x = process ();
}
Run Code Online (Sandbox Code Playgroud)
方法2:
function Foo () {
var a = 1;
var b = 2;
var c = (a+b)/2;
var $element = $('#myElement');
x = process (a, b, c, $element);
}
function process (a, b, c, $element){ …Run Code Online (Sandbox Code Playgroud) 是否可以将 After Effects 中创建的原生矢量形状转换为 adobe Illustrator 或 Eps 等?尝试导出为 SWF,但它仍然转换为光栅图形并丢失矢量数据。
即使 3rd 方脚本可用,也请告诉我。
我正在使用原型方法,这里是scenerio
function Foo () {
this.x = 5;
this.y = 2;
this.z = this.addValues();
}
Foo.prototype = {
addValues: function (){
return this.x + this.y;
}
}
Run Code Online (Sandbox Code Playgroud)
显然这只是一个简单的例子; 在实际项目中,'addValue'函数中会有很多活动.使用'this'关键字100次或将其缓存到局部变量可以帮助任何性能改进.例如,下面会有什么区别?
Foo.prototype = {
addValues: function (){
var self = this;
return self.x + self.y;
}
}
Run Code Online (Sandbox Code Playgroud)