Как я могу сделать так, чтобы этот скрипт сокращения URL-адреса работал правильно?
<!DOCTYPE html> <div class="row flex-center"> <div class="col-8 col"> <h2>AAA URL Shortener</h2> <div class="form-group"> URL Here: <script> function generatePath id="url" (path = 'url') { let characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789' let position = Math.floor(Math.random() * characters.length) let character = characters.charAt(position) if (path.length === 7) { return path } return generatePath(path + character) </script> </div> <div id="message" class="alert alert-primary"></div> <p class="padding-top"> </p> </div> </div> <script> function generatePath id="url" (path = 'url') { let characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789' let position = Math.floor(Math.random() * characters.length) let character = characters.charAt(position) if (path.length === 7) { return path } return generatePath(path + character) </script> <div id="clockbox" style="font: 14pt Arial; color: #CCCCFF"> <script> tday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"); tmonth=new Array("January","February","March","April","May","June","July","August","September","October","November","December"); function GetClock(){ var d=new Date(); var nday=d.getDay(),nmonth=d.getMonth(),ndate=d.getDate(),nyear=d.getFullYear(); var nhour=d.getHours(),nmin=d.getMinutes(),nsec=d.getSeconds(),ap; if(nhour==0){ap=" AM";nhour=12;} else if(nhour<12){ap=" AM";} else if(nhour==12){ap=" PM";} else if(nhour>12){ap=" PM";nhour-=12;} if(nmin<=9) nmin="0"+nmin; if(nsec<=9) nsec="0"+nsec; document.getElementById('clockbox').innerHTML=""+tday[nday]+", "+tmonth[nmonth]+" "+ndate+", "+nyear+" "+nhour+":"+nmin+":"+nsec+ap+""; } window.onload=function(){ GetClock(); setInterval(GetClock,1000); } </script> <div id="clockbox"></div> </div>
Я не вижу результатов укорочения, и функция, похоже, не отформатирована должным образом. Я хотел бы, чтобы новый URL-адрес отображался на той же странице.
Что я уже пробовал:
Различные формы письма, как на странице, так и во внешнем документе.
Richard Deeming
Вы можете начать с исправления синтаксических ошибок в вашем generatePath
функция:
function generatePath(id="url", path = 'url') { const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; let position = Math.floor(Math.random() * characters.length); let character = characters.charAt(position); if (path.length === 7) { return path; } return generatePath(path + character); }
Кроме того, на ваш вопрос почти невозможно ответить. Вы не предоставили пользователю никакого способа ввести значение или вызвать ваш шортенер. Вы нигде не указали в документе, чтобы отобразить результат. И вы не показали, как вы собираетесь сопоставить случайно сгенерированную строку с исходным URL-адресом.