views:

225

answers:

3
+1  Q: 

Javascript squared

Using the javascript function

function squareIt(number) {
   return number * number;
}

When given the number 4294967296 the function returns 18446744073709552000 is returned

Everyone knows the real answer is 18446744073709551616 :-)

I guess this is to to with rounding on my 32-bit machine. However, would this script give the right answer on a 64 bit machine? Has anyone tried this?

+1  A: 

Javascript uses 64 bit floating point arithmetic internally for numerical calculations - the results you see are a reflection of this, and will happene regardless of the underlying architecture.

Visage
A: 

what about this

function squareIt(number){
return Math.pow(number,2)
}
Konstantinos
um, did you bother testing it? You would know the answer.
epascarello
yeah, and it returns 18446744073709552000
Konstantinos
+2  A: 

ChrisV- see this post. Also it easier for people to evaluate your question by typing the following JavaScript directly into the browser URL textbox:

javascript:4294967296*4294967296
RichardOD