2013-10-30 10 views

答えて

13

関数を呼び出し、その呼び出しの戻り値を保存します。

function firstFunction() { 
    // do something 
    return "testing 123"; 
} 

var test = firstFunction(); // this will grab you the return value from firstFunction(); 
alert(test); 

あなたは限り、両方の機能がscope同じ持っているように、あまりにも別の関数から、この電話をかけることができます。例えば

:他の関数内

function testCase() { 
    var test = firstFunction(); 
    alert(test); 
} 

Demo

+0

'alert(firstFunction())だけではないのはなぜですか?私は今日誰かの質問をこの文書の複製としてマークしたので質問しますが、答えの1つは本質的に私が与えた形式であり、中間変数が必要ではありません(またはsecondFunction(secondFunction) –

+1

これは明らかに優れていますが、質問に質問されたときにOPが初心者であり、初心者に非常に基本的な明確な概念を教える方がよいことが分かりました。変数に戻り値を保存することは初心者には意味があります。 –

+0

OK、あなたの答えがありがとう、何かを盛り上げようとしていませんでした。あなたのアプローチのもう一つの理由は、デバッグを簡単にすることができるということです –

0

コール機能:

function abc(){  
    var a = firstFunction();  
} 

function firstFunction() { 
    Do something; 
    return somevalue 
} 
0

あなたは確かにこれを行うことができます。

function secondFunction() { 
    alert(firstFunction()); 
} 

それともfirstFunctionの結果をホストするために、グローバル変数を使用します:

var v = firstFunction(); 
function secondFunction() { alert(v); } 

それともfirstFunctionの結果を渡すあなたがsecondFunctionからfirstFunctionを呼び出すことができます

function fnOne(){ 
    // do something 
    return value; 
} 


function fnTwo(){ 
var strVal= fnOne(); 
//use strValhere 
alert(strVal); 
} 
2

下記をご覧secondFunctionへのパラメータとして:

へのパラメータとして
function secondFunction(v) { alert(v); } 
secondFunction(firstFunction()); 

またはパスfirstFunction:ここ

function secondFunction(fn) { alert(fn()); } 
secondFunction(firstFunction); 

はデモです:http://jsfiddle.net/wared/RK6X7/