Судя по исходникам (если я нашёл достаточно старую версию, как у вас), метод get() вызывает переданную в него функцию, и первым параметром в неё – уже готовый хэш (строку). И только вторым параметром массив компонентов. Так что зря вы затеяли
бездумно копировать чужой код со всяких форумов самостоятельно собирать строку.
Попробуйте как-то так:
Fingerprint2.get(hash => {
$.ajax({
type: 'post',
url: 'https://api.example.com/log',
dataType: 'json',
data: { hash },
success: res => console.log('OK!', res),
error: console.error,
});
});
Но вообще, переходите на поддерживаемую и обновляемую версию пакета
@fingerprintjs/fingerprintjs