Bu hesaplamayı yaptığım şeylerde çok kullanma eğilimindeyim, bu yüzden onu Math nesnesine eklemeyi seviyorum:
Math.dist=function(x1,y1,x2,y2){
if(!x2) x2=0;
if(!y2) y2=0;
return Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
}
Math.dist(0,0, 3,4); //the output will be 5
Math.dist(1,1, 4,5); //the output will be 5
Math.dist(3,4); //the output will be 5
Güncelleme:
Bu yaklaşım özellikle buna benzer bir durumla karşılaştığınızda mutlu olur (sık sık yaparım):
varName.dist=Math.sqrt( ( (varName.paramX-varX)/2-cx )*( (varName.paramX-varX)/2-cx ) + ( (varName.paramY-varY)/2-cy )*( (varName.paramY-varY)/2-cy ) );
bu korkunç şey çok daha yönetilebilir hale geliyor:
varName.dist=Math.dist((varName.paramX-varX)/2, (varName.paramY-varY)/2, cx, cy);