PromiseValueについて

いつもお世話になっております。

 

関数の戻り値にREST APIで取得した値を設定したいのですが、思った値の返し方がわかりません。

PromiseValueの値をreturnするにはどうすればいいのでしょうか。

 

下記が関数の内容と取得できている情報です。

よろしくお願いいたします。

async function GetCompany(number){

            var body = {

                "app" : 10,

                "query" : '数値_0 = "' + number + '"',

                "fields" : ['company'],

                "totalCount" :true

            }

            const res = await kintone.api('/k/v1/records','GET',body);

            var re_company = res.records[0].company.value;

                console.log(re_company); //ここでは思った内容が表示される

                return re_company;

        };

//関数の呼び出し
     var company = GetCompany(number);

      console.log(company);

 

以下の画像がconsole.log(company);の内容です。

順番も意図したとおりになっておらず、関数に問題があるんだろうとは思いますが、どう変えたら上手くいくかわからないので、ご教授いただければ幸いです。

よろしくお願いいたします。

吉本茜様

お世話になっております.

関数の呼び出し時にawaitを用いる必要があるかと思います.
全体を即時関数で囲ってasyncにすれば,awaitを使えます.

(async () => {
var company = await GetCompany(number);
console.log(company);
})();

江田 篤史様

早速コメントをくださいましてありがとうございます。

関数の呼び出しにawaitを用いて書き直したところ、思った通りに動きました。

関数が間違えているという先入観で、呼び出し時にawaitを用いることが頭にありませんでした。

すぐに解決して本当に助かりました。。。

ありがとうございました!