2016-05-19 7 views
1

`` `ジャバスクリプトここfingerprintjs2関数の結果を取得する方法は?

'use strict'; 
    import FingerPrint from 'fingerprintjs2'; 

    var fingerprint = new FingerPrint(); 
    var dfp = fingerprint.get(function(dfp, components){ 
     console.log(dfp); 
     return dfp; 
    }) 

    console.log('dfp' + dfp); 

` ``

、結果は次のとおりです。 js dfpundefined 67bf907b9447de2c085b9fdf3dd1ad23 未定義と最初のコンソールと第一、第二にconsole.logリターンは、第きます。

アンダーファインドではなく正しい結果を返したいですか?どうやって ?

thx!

答えて

-1

fingerprintjs2ライブラリは非同期です。あなたのコードが実行されているので、console.log('dfp' + dfp);行はの前に実行され、の前にjsfingerprint2ライブラリの計算が終了しています。そのため、後に目的の出力が表示されます。

それが計算された後.get()方法は、指紋を返しますので、あなたが変数に格納したい場合は、グローバル変数を使用する必要があります。

'use strict'; 
import FingerPrint from 'fingerprintjs2'; 

var fingerprint = new FingerPrint(), 
dfp; 

fingerprint.get(function(result, components){ 
    dfp = result; 
    console.log('Fingerprint: ' + dfp); 
}); 
関連する問題