Может кто-нибудь, пожалуйста, исправить этот цикл? У него есть ошибки при повторении следующего значения и сохранении данных массива

#node.js #arrays #json #loops #for-loop

#node.js #массивы #json #циклы #for-loop

Вопрос:

Вот цикл.

  for(let k = 0; k <2; k  ) {

        await dmb.page.waitForSelector('a > div > div.Igw0E.rBNOH.YBx95.ybXk5._4EzTm.soMvl > div[class]');

        await dmb.page.click('a > div > div.Igw0E.rBNOH.YBx95.ybXk5._4EzTm.soMvl > div[class]');

        await dmb.page.waitFor(2000);

            for(let i  = 0; i < textbycomma.length; i  ){

                let type = textbycomma[i];

                await dmb.page.waitForSelector('textarea[placeholder="Message..."]');

                await dmb.page.type('textarea[placeholder="Message..."]', type , {delay: 100});

                let toClick = await dmb.page.$x('//button[contains(text(), "Send")]');

                await toClick[0].click();

                await dmb.page.waitFor(2000);
                
                let readurls = []

                readurls[k] = dmb.page.url();

                var hrefs = {

                    href : readurls

                }
            
                fs.writeFileSync('./savedlinks.json', JSON.stringify(hrefs));

                if(i = textbycomma.length){

                    break;
 
                }

            }

            await dmb.page.goto('https://www.example.com');

        }
  

Пожалуйста, смотрите здесь ссылки:

 script: async(text = []) => {

        var textbycomma = [] = text.toString().split(',');
  

Это мой пример данных:

 Console:

text : Hello, Nice

textbycomma : ['Hello','Nice']

Loop variable *i* value remains 0 as many times as the loop runs. This only sends the 1st message (Hello) to the users.

In my savedlinks.json, the value saved is:

{"href":[null,"https://www.example.com/"]}
  

Что я хочу сделать с этим циклом, так это отправить первое сообщение, Hello сохранив URL-адреса отправленных сообщений в my savedlinks.json .

С cronjob задержкой в 1 час этот скрипт запускается снова и проверяет, соответствуют ли URL-адреса URL-адресам новых пользователей, если нет, он отправляет первое сообщение, и если да, он отправляет сообщение отправки Nice .

Комментарии:

1. Не связано, но зачем вам превращать массив в строку, а затем снова разбивать его на части в массив? Обратите внимание, что это может привести к ошибкам, если строки содержат запятые.

2. Я новичок в разработке, поэтому это показалось самым простым.

3. Самый простой способ для чего? Это уже массив; вы преобразуете его в строку и обратно в массив, с возможностью внесения ошибки.

4. Не возражаю, не могли бы вы помочь мне с циклом, пожалуйста?