次のJavaScriptコードでは、私はそれが何をしたいかを正確に行います。私はミスを犯したので流行のコード:なぜ機能するのですか?
function setDistances() {
var distances = [];
//get values of ten numeric HTML fields
for (var i = 0; i < 10; i++) {
var thiswide = document.getElementById("dist"+i).value;
//This value is a string, despite coming from a numeric field.
if (thiswide = Number(thiswide)){ //excluding blanks
distances.push(thiswide); //putting value in an array
}} }
これはのみ動作します。 if (thiswide == Number(thiswide))
を書いたのであれば、エラーに気付いた後に見つけたように、javascriptは "0"と等しいと扱われるので、空白を除外することはできません。
したがって、if (thiswide = Number(thiswide))
は空白をどのように除外しますか?
として解釈さ
if(0)
あります結果はthiswideに割り当てられ、偽です –'this'はキーワードであり、特定のプロパティを持っています。 https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/this/ http://www.quirksmode.org/js/this.html – jeff
@jeff、実際のコードを読んでください:p ifそれは 'これは広い'だったので、構文エラーがあり、javscriptはまったく動かないでしょう –