2017-07-11 15 views
-1

getNouns(text、callback)などの関数getNounsを持つWordPosパッケージを使用しています。コールバック値を変数に代入する

wordpos.getNouns('The angry bear chased the frightened little squirrel.', 
console.log) 
// [ 'bear', 'squirrel', 'little', 'chased' ] 

私は約束事をログに記録するのではなく、むしろ運がないと書いています。助言がありますか?

+0

関数で配列を使用したいと思いますか?これを行うには約束しますか? –

+0

"約束を配列に書いて"どういう意味ですか? – simnys

+0

何を試しましたか? console.logを配列にプッシュする関数に置き換えることはできませんか? –

答えて

1

は、なぜあなたはちょうど

wordpos.getNouns('The angry bear chased the frightened little squirrel.', result => { 
    const array = result; 
    // do stuff with `array` 
}) 
+0

この呼び出しの外でこの配列を使用する方法はありますか? – tittimous

+0

プロミスまたは非同期関数を使用しない限り、 – Aron

1

あなたはPromiseでこの機能をラップする必要もありません。

function getNounsPromise(string) { 
    return new Promise((resolve, reject) => { 
    wordpos.getNouns(string, resolve); 
    }); 
} 

// usage: 
getNounsPromise('The angry bear chased the frightened little squirrel.') 
    .then(result => console.log(result)); // [ 'bear', 'squirrel', 'little', 'chased' ] 
+0

これは正しくありません: var result = getNounsPromise(string).then(result => console.log(result));配列としてresultを使用したい場合は を使用しますか? – tittimous

+1

これは非同期プログラミング作業ではありません –

+0

プロミスをシリアル化することはできません。 –

関連する問題