Undefined или NAN - результат при извлечении из mongoDB - PullRequest
2 голосов
/ 05 августа 2020

Я пытаюсь извлечь данные из базы данных и отобразить их в своем приложении. Все переменные работают, кроме firstPingPrice. Я получаю либо неопределенный результат, либо результат NAN.

const parsePing = (str) => {
const qoutePattern = /"(.*?)"/g;
const pingStr = str.match(qoutePattern)
const pings = [];
pingStr.forEach(i => {
    if (i != '"resu"' && i != null && !(String(i).includes('<'))) {
        i = i.split('"')[1].split('|')
        let ticker = i[0] + 'BTC'
        let ping = {
            symbol: i[0],
            market: 'BTC',
            ticker: ticker,
            ticker_slash: i[0] + '/' + 'BTC',
            exchange: 'binance',
            timestamp: i[7],
            ping_info: {
                pings: Number(i[1]).valueOf(),
                net_vol_btc: Number(i[2]).valueOf(),
                net_vol_per: i[3],
                net_vol_per_num: Number(String(i[3]).split('%')[0]).valueOf(),
                recent_total_vol_btc: Number(i[4]).valueOf(),
                recent_volume_percentage: i[5],
                recent_volume_percentage_num: Number(String(i[6]).split('%')[0]).valueOf(),
                recent_net_volume: Number(i[6]),
                first_ping_price: Number(i[8])
            },
        }
        pings.push(ping)
    }
})
return pings

} Я считаю, что это строка. Я добавил firstPingPrice и присвоил ему i8 .... Я не знаю, правильно ли это. Данные поступают в базу данных правильно как число, и я пытаюсь отобразить как число в моем приложении.

const parsePing = (str, exchange) => {
const qoutePattern = /"(.*?)"/g;
const pingStr = str.match(qoutePattern)
const pings = [];
pingStr.forEach((i) => {
    if (i != '"resu"' && i != null && !(String(i).includes('<'))) {
        i = i.split('"')[1].split('|')
        let ticker = i[0] + 'BTC'
        let ping = {
            symbol: i[0],
            market: 'BTC',
            ticker: ticker,
            exchange: exchange,
            date: new Date().toLocaleDateString('en-US'),
            info: {
                pingNum: Number(i[1]),
                netVolBTC: Number(i[2]),
                netVolPer: i[3],
                netVolPerNum: Number(String(i[3]).split('%')[0]),
                recentTotalVolBTC: Number(i[4]),
                recentVolPer: i[5],
                recentVolPerNum:  Number(String(i[6]).split('%')[0]),
                recentNetVol: Number(i[6]),
                btcPrice: '',
                coinHigh: '',
                coinLow: '',
                dailyVol: '',
                dailyPriceChange: '',
                firstPingPrice: Number(i[8]),
            }
        }
        pings.push(ping)
    }
})
return pings

} введите здесь код

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...