2013-02-15 12 views
6

Ich arbeitete an einer einfachen Programmierübung mein Lehrer gab uns, und ich bemerkte mehrmals, dass in Javascript, ich eine Zahl durch 1 teilen muss, sonst wird es einen lächerlichen Wert zurückgeben. Irgendwelche Erklärungen? Ich habe einen jsfiddle http://jsfiddle.net/TpNay/1/Zweck der Division durch 1 Javascript

var widthrand=Math.floor(Math.random()*widthRange); width=widthrand + document.getElementById('width').value/1;

Wenn Sie in Zeile aussehen 22 und von 1, die Kluft herausnehmen, und klicken Sie auf generieren, wird es lächerlich Längen Dank

Antwort

9

zurückkehren Es macht JavaScript Typ Jonglieren, um den Wert document.getElementById('width').value zu numerieren.

Eine bessere Art und Weise zu tun, wäre es parseInt(document.getElementById('width').value, 10)

+2

Insbesondere sein, die „lächerlich Längen“ Sie erwähnen sind, weil das Zeichen + für Strings überlastet ist, und so sehen Sie JavaScript, um die beiden Werte verketten, statt sie zu Summieren, wenn die Sekunde ist eine Schnur. – Interrobang

+0

Vergessen Sie nicht, den zweiten Parameter 'radix' an' parseInt' zu übergeben. – jbabey

+2

Warum ist 'parseInt'" besser "? Ist nur ein anderer Weg, um das Gleiche zu erreichen. – bfavaretto