嗨伙计们我怎样才能更好地优化我的js对象..你可以看到有很多重复,我想找到更好的方法来编写这个对象。我是JS的新手,这就是为什么这么愚蠢的问题。 提前谢谢。
//field odject
var $field = $("#field");
var field = {
width: $field.width(),
offsetTop: $field.offset().top,
offsetLeft: $field.offset().left,
offsetRight: $field.offset().left + $field.width(),
offsetBottom: $field.offset().top + $field.height()
};
答案 0 :(得分:3)
我猜你在构造这个对象时如何不进行这么多的方法调用?
您可以使用一些变量来缓存多次使用的值:
var $field = $("#field");
var width = $field.width();
var offset = $field.offset();
var top = offset.top;
var left = offset.left;
var field = {
width: width,
offsetTop: top,
offsetLeft: left,
offsetRight: left + width,
offsetBottom: top + $field.height()
};
答案 1 :(得分:0)
function field($sel){
//field odject
var $field = $($sel);
var offset = $field.offset();
var field = {
width: $field.width(),
offsetTop:offset.top,
offsetLeft: offset.left,
offsetRight: offset.left + $field.width(),
offsetBottom: offset.top + $field.height()
};
return field;
}
您可以通过创建构造函数来扩展您的功能,并从函数中返回对象。