Задать вопрос
Контакты
Местоположение
Россия, Томская обл., Томск

Достижения

Все достижения (3)

Наибольший вклад в теги

Все теги (33)

Лучшие ответы пользователя

Все ответы (55)
  • Как получить массивы объектов с одинаковыми ключами из другого массива объектов?

    scoffs
    @scoffs
    Fullstack | C# | Student
    Кажется тебе тут поможет `reduce`
    const array = [
      {id: 1, name: 'Test_1'},
      {id: 2, name: 'Test_2'},
      {id: 3, name: 'Test_3'},
      {id: 4, name: 'Test_1'},
      {id: 5, name: 'Test_2'}
    ];
    
    const groupedArrays = array.reduce((result, obj) => {
      // Проверяем, существует ли уже массив с данным значением name
      const existingArray = result.find(arr => arr[0].name === obj.name);
      
      // Если такой массив уже существует, добавляем текущий объект в него
      if (existingArray) {
        existingArray.push(obj);
      } else {
        // Если такого массива еще нет, создаем новый массив с текущим объектом
        result.push([obj]);
      }
      
      return result;
    }, []);
    
    // Печатаем результат
    groupedArrays.forEach(arr => {
      console.log('____');
      console.log(arr);
    });
    Ответ написан
  • Как создать базу данных и связать с JAVASCRIPT?

    scoffs
    @scoffs
    Fullstack | C# | Student
    У меня есть мелкий проект
    Там MERN стек - MongoDB / Express / React / NodeJS, может поможет

    А ванильный пример будет выглядеть как-то так:

    Для начала надо вообще сказать монго на пк, а потом и в проект
    npm install mongodb

    Потом можно в папке server подключиться к БД
    const { MongoClient } = require('mongodb');
    
    const url = 'mongodb://localhost:27017'; // URL базы данных
    const dbName = 'mydatabase'; // Имя базы данных
    
    const client = new MongoClient(url);
    
    async function connectToDatabase() {
      try {
        await client.connect();
        console.log('Connected to the database');
        return client.db(dbName);
      } catch (error) {
        console.error('Error connecting to the database:', error);
      }
    }
    
    module.exports = connectToDatabase;


    Делаем базовые маршруты
    const express = require('express');
    const connectToDatabase = require('./db'); // Путь к файлу подключения к базе данных
    
    const app = express();
    app.use(express.json());
    
    // Маршрут для сохранения данных в базу данных
    app.post('/data', async (req, res) => {
      const { email, phoneNumber, fullName } = req.body;
    
      try {
        const db = await connectToDatabase();
        const collection = db.collection('data'); // Имя коллекции
    
        const result = await collection.insertOne({
          email,
          phoneNumber,
          fullName,
        });
    
        res.status(201).json(result.ops[0]); // Отправить сохраненный документ обратно клиенту
      } catch (error) {
        console.error('Error saving data to the database:', error);
        res.status(500).json({ error: 'An error occurred' });
      }
    });
    
    app.listen(3000, () => {
      console.log('Server listening on port 3000');
    });


    Ну и базовая разметка
    <form action="/data" method="POST">
      <label for="email">Email:</label>
      <input type="email" id="email" name="email" required>
      
      <label for="phoneNumber">Phone Number:</label>
      <input type="tel" id="phoneNumber" name="phoneNumber" required>
      
      <label for="fullName">Full Name:</label>
      <input type="text" id="fullName" name="fullName" required>
      
      <button type="submit">Submit</button>
    </form>


    require лучше заменить на import (в packages.json указать надо "type": "module")
    Ответ написан
    3 комментария