Giter Site home page Giter Site logo

password_generator's Introduction

Как это работает:

1) Создана функция prepareOptions с дефолтными значениями, которые записаны в объект, для генерации пароля: длина пароля 12, использовать
символы и цифры при генерации пароля. Это нужно для того, чтобы пароль генерировался, если пользователь
передал параметры при вызове функции generatePassword()

2) Создана функция checkError(), которая обрабатывает и выводит на экран тип ошибки, если пользователь присвоил
некорректные значения свойстам объектов.

3) Функция getRandomIndexOfArray() генерирует и возвращает рандомный индекс из массива.

4) В функции fillPasswordArray() прописаны условия для генерации пароля. В зависимости от условия берутся определенные массивы
для генерации.

5) В функцию generatePassword() переданы дефолтные опции для генерации в переменную preparedOptions. Обработчик ошибок checkError(), а так же
переменная passwordArray, которая является массивом из сгенерированных значений(индексов) других массивов. Методом join() 
превращаем массив в строку и получаем готовый пароль. 

--- Вызов функции/запуск генератора ---

Установить в интерпетатор Live Server от Ritwick Dey. Открыть файл index.html --> правая кнопка мыши --> open with Live Server --> ctrl + s. Откроется браузер по умолчанию. F12 --> console

a) console.log(generatePassword()) --> свойства не переданы(passwordLength, numbers, symbols).
Свойства по умолчанию: длина пароля: 12, цифры и символы используются.

b) generatePassword({ passwordLength: 10, numbers: false, symbols: false }) --> свойства переданы. 
Получим пароль 10, без цифр и символов.

с) Если один из параметров не прописать, то будет использоваться дефолтный. Например:
generatePassword({ symbols: false }) --> будет сгенерирован пароль длиной 12, с цифрами, но без символов.

Дефолтные параметры прописаны в функции prepareOptions()

password_generator's People

Contributors

nickbutnar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.