【问题标题】:fingerprintjs2 how to obtain get function results?指纹js2如何获取get函数结果?
【发布时间】:2016-05-19 03:19:40
【问题描述】:

```javascript

    '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 首先返回未定义,第一个控制台排在第二位。

我想返回正确的结果而不是underfind?我该怎么办?

谢谢!

【问题讨论】:

    标签: javascript fingerprintjs2


    【解决方案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);
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多