1. Опишите одну вещь, которую вы изучаете сегодня на уроке.

· Одна вещь, которой я научился сегодня на уроке, это создание условных выражений. Условные выражения основаны на логике истинности или ложности, поэтому нам нужно, чтобы наши данные разбивались на логические значения. В Javascript все типы данных могут быть оценены, чтобы определить, имеют ли они значение (правда) или нет (ложь). Я узнал, что есть разница между булевыми значениями true и false и оценкой истинности и ложности. Пример, приведенный в нашей предварительной работе, был следующим: 5 является истинным значением (или истинным), но это не булева истина. То же самое для 0, это ложное значение (или ложное), но это не логическое значение false. Единственными ложными значениями в Javascript являются 0, null, false, undefined, NaN и ‘’ (пустая строка).

2. Как вы обеспечиваете доступность и удобство дизайна вашего веб-сайта или веб-приложения?

· Чтобы дизайн моего веб-сайта или веб-приложения был доступным и удобным для пользователя, некоторые основные и проверенные советы по удобству использования включают в себя правильное использование слоганов, интуитивно понятную навигацию, краткое содержание и стратегическое использование визуальных элементов. Ссылки и кнопки должны казаться интерактивными, а веб-сайт логичным. Надлежащее планирование и тщательное тестирование обнаружат и устранят потенциальные проблемы с удобством использования. Каркас чрезвычайно важен в начальном процессе. Он должен содержать хорошо спланированную информацию, а также хорошо отформатированный контент, который легко сканировать. Он должен выглядеть одинаково во всех браузерах и иметь эффективную навигацию. Цветовая схема также важна с правильным контрастом между фоном веб-сайта и контентом. Формы должны быть удобными для использования, чтобы пользователям было легко взаимодействовать с сайтом.

3. Каковы ваши любимые функции HTML5 и как вы реализовали их в своих проектах разработки внешнего интерфейса?

· Мне нравится, как легко можно добавлять аудио и/или видео в мои проекты. Я также читал, что добавить холст очень просто, и это кажется действительно забавным проектом, например, добавление Flappy Bird на мой веб-сайт. Еще одной особенностью является добавление изображения с нескольких источников. Вы также можете настроить его для различных размеров экрана. Я реализовал много видео в своих проектах в классе Intro, и я подумал, что это действительно круто.

4. Как вы структурируете свои CSS и JavaScript, чтобы другим разработчикам было проще с ними работать?

· Я стараюсь быть точным в своем HTML-коде, чтобы упростить процесс редактирования CSS. Я считаю, что соглашения об именах очень важны для того, чтобы другим разработчикам было проще быстро пройти через них и понять, что я хочу с ними делать. Я также стараюсь не использовать код слишком много раз, чтобы уменьшить количество строк в моем CSS. В моем Javascript я стараюсь, чтобы функции и вызовы были все вместе, а не разделены совершенно разными действиями между кодами. Я чувствую, что чем больше я кодирую, тем больше я понимаю, как и где организовать вещи, чтобы сделать их более читабельными.

5. Каков ваш процесс решения проблем с рендерингом в браузере? Считаете ли вы, что с одним браузером работать сложнее, чем с другими?

· Я считаю, что с Microsoft Edge сложно работать. Когда я щелкаю правой кнопкой мыши в своем HTML-коде и открываю живой сервер, по умолчанию для моего компьютера используется Microsoft Edge, и он никогда не выглядит так же, как Google Chrome. Что касается Chrome и Firefox, я не нахожу там столько проблем. Мой процесс решения проблем с рендерингом, специфичных для браузера, заключается в том, чтобы сначала посмотреть на caniuse.com, чтобы увидеть, что будет работать на каких веб-сайтах. Затем я могу выполнить межбраузерное тестирование, чтобы убедиться, что веб-сайты и веб-приложения, которые я могу создать, работают в приемлемом количестве веб-браузеров. Я также не рекомендую откладывать тестирование до конца проекта. Любые ошибки, которые мы обнаружим, будут намного более дорогими и трудоемкими, чем если бы мы обнаружили их и исправили по мере продвижения. Для этого очень важно встретиться с моим будущим клиентом/владельцем сайта и обсудить, какой контент и функциональность должна иметь веб-страница, как она должна выглядеть и что они хотят, чтобы она делала. проект. Далее мне нужно будет выяснить, какие браузеры, устройства и т. д. будет использовать целевая аудитория этого сайта. После этого я разрабатывал приложение и добивался, чтобы все функции работали как можно точнее во всех целевых браузерах. Это может включать в себя написание разных путей кода, которые по-разному воспроизводят функциональные возможности, предназначенные для разных браузеров. Иногда не все сайты будут работать с некоторыми старыми браузерами. Предпоследним шагом будет тестирование в паре стабильных браузеров. И, наконец, последний шаг (но не менее важный): вернитесь назад и исправьте/повторите его и сузьте круг возможных ошибок. Определенно есть инструменты, облегчающие этот процесс на разных сайтах отладки.

6. В чем разница между == и === ?

· == пытается преобразовать значения в один и тот же тип перед проверкой, они одинаковы. Например: «5» == 5.

· === этого не делает; он требует, чтобы объекты одного и того же типа были равны. Это называется тождественным оператором. Например: «5» !== 5. Это сравнивает значения, а также их типы, поэтому преобразования не выполняются.

7. Каково значение foo? var foo = 10 + ‘20’;

· ‘1030’, из-за приведения типа числа к строке.

8. Опишите, что такое терминальное приложение?

· Терминальное приложение — это приложение, работающее внутри терминала. Большая часть вывода ваших программ выводится на терминал. Он используется для создания интерпретаторов командной строки в ваших приложениях. Вы можете предоставить объекту методы; каждый метод будет вызываться по команде пользователя. Объект может иметь вложенные объекты, которые создают вложенный интерпретатор. Это идеально, если вы хотите предоставить дополнительные функции для опытных пользователей. Он также используется в качестве инструмента отладки.

9. Что такое тернарный оператор?

· Это оператор принятия решения, который требует трех операндов: условие, истинное утверждение и ложное утверждение, которые объединены с помощью вопросительного знака (?) и двоеточия (:): ((условие) ? trueStatement : falseStatement).

· Тернарный оператор – это то, чем всегда хотел быть вызов метода IIF(). Как это работает, так это то, что условие оценивается. Если оно ложно, то выполняется ложное утверждение. Короче говоря, мы можем думать о тернарном операторе как о сокращении оператора if/else. Тернарный оператор легче написать, но труднее прочитать, чем его длинную копию. Это становится еще более верным, когда вы начинаете вкладывать тернарные операторы друг в друга. В заключение следует отметить, что тернарные операторы, особенно в языках, предоставляющих гибкие сигнатуры методов, часто используются для условного преобразования или аргументов метода по умолчанию. Например, их можно использовать для предоставления значения по умолчанию для аргумента, если оно не было передано.