Алексей Ярков, Ну вот да. Ничего сложного. Это мы парсим обьекты
Но когда я JSON.stringify(data)
// получаю формат json
{"stream":"btcusdt@bookTicker","data":{"u":4521
// ТО ----> console.log(trade.data.s); ---->>>> UNDEFINED
Алексей Ярков, Да нет. Около 1000. На php недавно писал под json - довольно просто. Пробую на ноде. На ноде пока что выходит только обьекты парсить. Думал на ноде так же легко как на пхп, вот и подумал у людей спросить кто знает.
Azamat Lee, Здравствуйте. Подскажите. Мы выводим цену
console.log(prices['someone2']); // Выводит цену для 'someone2'
/// Как вывести цену и еще его ключь из БД, по которому ищем? Чтобы получилось someone2 = 'значение из бд'
Azamat Lee,
Про глобальные переменные. Я получил массив. Далее запутался.
Покажите как вывести теперь (как вы говорили в любое место. За пределы функции.
getData().then(() => {
// После завершения функции getData, данные будут доступны в globalData
console.log(globalData); // Выводим данные в консоль
// Теперь вы можете использовать globalData как угодно
});
Здесь я получаю массив.
Azamat Lee, Остается все то же самое, только создаем пул и вместо закрытия возвращаем в пул.
Вот такой момент.
Когда я добавлял данные в эту таблицу с ценами - я делал так ---->
Это на модуле MYSQL
Я добавлял если его нет. А если есть то обновлял
Как теперь с mysql2/promise
---> Добавить если его НЕТ. А если он есть то НЕ добавляем. А именно. Исключить добавление символа , если он уже есть в таблице.
let ss='dd';
/// добавляем символ в бд и данные. Если его нет, то добавим. Если он есть - обновим значения.
let newUser = {
birza:'571',
symbol:ss,
date_day:'22.07.2023',
price:'05.45678977'
}
conn.query('INSERT INTO price_history_1d SET ? ON DUPLICATE KEY UPDATE ?', [newUser, newUser, newUser, newUser], (err,rows) => {
if(err) {
return console.log('ошибка:' + err.message);
}
});
Azamat Lee, По моему вы показали как раз то что нужно. Буду пробовать реализовать. Я просто еще не до конца понимаю вот это.
async function getData() {
// ... код функции getData ... ----->> КАКОЙ ЗДЕСЬ МОЖЕТ БЫТЬ КОД?
return globalData; // Возвращаем данные
}
getData().then((data) => {
// Обрабатываем данные после вызова функции
console.log(data); // Выводим данные в консоль
});
Azamat Lee,
Спасибо.
Тогда соответственно можно делать так?
if (user) {
XX = parseFloat(user.price);
XX2 = parseFloat(user.price);
XX3 = parseFloat(user.price);
}
Если у меня 1000+ таких переменных. ...
Можно ли как ни будь сделать, чтобы это было не условие сравнения, а просто обьявление переменных, которые существуют в данной таблице. То есть мы ничего не ищем и не сравниваем, просто выводим все что есть в таблице в виде переменных. Таким образом их данные вместо =0 обновлятся на данные, которые в таблице
Sun2790, Тоесть.
изначально в коде стоит
let someone2=0;
Я добавляю в эту таблицу данные из вебсокета.
{ id: 571, name: 'someone2', price: '0.45678977000000' },
читаем данные
и теперь соответственно
let someone2'=0.45678977000000;
Azamat Lee, Спасибо.
Получил массив данных
[
{ id: 570, name: 'someone', price: '0.45678977000000' },
{ id: 571, name: 'someone2', price: '0.45678977000000' },
{ id: 571, name: 'dd', price: '0.45678977000000' },
{ id: 571, name: 'dd', price: '5.45678977000000' }
]
// Опять же. Как мне сделать следующее
let XX =0.45678977000000;
Сама логика
У меня изначально обьявлено XX = 0;
Я должен подключиться к БД , найти someone2 и его price
и тогда XX = price;
Спасибо. mysql2/promise инсталлировал.
// Теперь вы можете работать с каждой строкой данных как с объектом
// Например, вы можете сохранить данные в переменные или отправить их куда-либо
/// приведите примеры если вас не затруднит. У меня как раз проблема состоит в этом.
Как мне вывести эти данные в переменные за пределы функции
let id some1=570; let name1 =someone; let sumAGEres1=0.4567;