2016-11-24 7 views
0

この関数は未定義を返すので、その背後にある理由を理解できません。私はグローバル変数を持っています:"未定義"を返す関数を理解する

私がconsole.logを実行すると、値が得られます。要素内の値を取得します。 それから私は持っていません:

var add = document.getElementById("add"); 

add.addEventListener("click", function(){ 
    console.log(adds(output)); 

    }) 

function adds(value){ 
    return value; 
} 

どんなに私が何をすべきか、それが原因であるものを、undefinedを返しますか?

+1

また、あなたのHTMLを追加してくださいだろうか?ありがとう – Christos

+0

http://stackoverflow.com/a/6491570/3154301投稿を確認してください –

+1

私のために働く:https://jsfiddle.net/r63udLkr/あなたのHTMLがなければ、問題を見つけるのは難しいです。 – Cleared

答えて

0

idがtotalNumberの要素の値が未定義になるのは、入力要素が空であるためです。通常、このコールバックはそれを必要とするため、この選択はイベントリスナーのコールバックの内部で行う必要があります。たとえば、次のスニペットを確認してください。

var add = document.getElementById("add"); 
 

 
add.addEventListener("click", function(){ 
 
    var output = document.getElementById("totalNumber").value; 
 
    console.log(adds(output)); 
 
    }) 
 

 
function adds(value){ 
 
    return value; 
 
}
<input type="text" id="totalNumber"/> 
 
<input type="button" id="add" value="add"/>

関連する問題