honey
(имя рандомно назвала, я не знаю их* по именам, так как не смотрела мультик) Смотрела Джеки чан, как говорит Джинджер, эй Арнольд!, Котопес, ох уж эти детки (до сих пор помню музыку опенинга!, Как и у котопса), а ещё крутые бобры.
honey
Ну если правильно верстать, то обычно нет проблем с схлопыванием
Я бы выставила один какой-то отступ, либо у верхнего элемента, либо у нижнего верхний марджин/паддинг Наверное у верхнего
Hide
Вроде 8 типов данных в жс
honey
Вроде 8 типов данных в жс
Ага. Пишут так. 3 пальца на правой руке: number, string, bollean 3 пальца на левой руке: Null, undefined, и ещё symbol Это я перечислила примитивные типы Есть ещё сложный - object И конечно же ещё один примитивный (который мне не нравится, что он все таки выделен в отдельный тип) - Bigint Так что 3+3, +ещё один сложный И + один мной непризнанный 3+3+1 +1
Hide
NaN еще
honey
NaN еще
Это часть number Специальное значение
Hide
Блин
honey
Может я, конечно, путаю ._.
honey
Но вроде nan это особое значение, которое прям то и значит - not a number (не число)
honey
Но вроде typeof nan Вернёт number
honey
Щас посмотрю
Hide
А нет null спутал с NaN 🙈
Hide
Блин хоть на юбилей сьездил стресс снял
Hide
Ато пиздец случился
Hide
Hide
Моя теплица улетела в полёт и провода порвала
🏴‍☠️
теплицу с ганжубасом снесло(
Hide
honey
Оо, ты камеру поставил домой ?
honey
Они были
Клёво)
honey
Hide
honey
Может сделать крепления, на крепления прицепить веревки, а веревки закрепить к грузам?
honey
🏴‍☠️
Но вроде typeof nan Вернёт number
потому что NaN это тип возвращаемый в результате арифметической операции с несовместимыми типами, например умножение числа на объект
Hide
Ещё пылевой вихрь потом крутил посреди огорода потом. Камеры то вырубились т к провода оборвало
honey
потому что NaN это тип возвращаемый в результате арифметической операции с несовместимыми типами, например умножение числа на объект
Знаю :D Спасибо) Только я это постеснялась говорить, подумала, ещё скажу что-нибудь, что будет звучать по дурацки*
honey
honey
Получается, если один из доступных аргументов не доступен к арифметической операции (не приводится к намбер), то результат такой операции будет nan
honey
honey
Так или не так?
honey
А можно спросить у вас Почему есть такое мнение, что в джс всё что есть - это объект
honey
Потому что это меня путает
honey
Как баба Яга путает всех, кто зашёл в её лес
honey
Hide
Свойства объекта заюзать можно
🏴‍☠️
1 * {} = NaN
honey
да как-то так Number({}) -> NaN
А, если невозможно привести аргумент к намбер, то результат такого приведения будет nan А просто операция с nan, так и вернёт - nan
Hide
Саня показывал эти чудеса )
Hide
да, 7 примитивных типов и объект
Главное наверное юзать строку, число, булеан и объект )
Hide
А всякие undefined нафиг
🏴‍☠️
почитайте спеку https://tc39.es/ecma262
VovaDos
Главное наверное юзать строку, число, булеан и объект )
В программировании нет главного, задачи очень разные, понадобиться почти все
Hide
В программировании нет главного, задачи очень разные, понадобиться почти все
То есть ты хочешь сказать часто работаешь с null, undefined?
Hide
И что ты с ними делаешь?)
VovaDos
Банальный пример, проверка на наличие значения в переменной
Hide
Это для условия
🏴‍☠️
А всякие undefined нафиг
если объявить переменную и не присвоить ей значение, ее тип undefined
Hide
Сами данные как юзаешь для проектов?
🏴‍☠️
let a; // undefined
honey
ну null присваивается когда явно хочешь показать что значения нет
Hide
Крч не понял вопрос
🏴‍☠️
если в массиве 1 элемент, а ты пробуешь достать 2 или 3, то жс возвращает undefined const arr = [1]; arr[2]; // undefined
🏴‍☠️
Крч не понял вопрос
Почитай серию книг Кайл Симпсон You don't know JS. Есть отдельная книга по типам данных
honey
Отдельная книга. По типам данных
Hide
Yeah, I don't know js bleat 😢
🏴‍☠️
You Don't Know JS: Types & Grammar
🏴‍☠️
NaN это особое состояние числа с плавающей точкой по стандарту IEEE 754 https://ru.wikipedia.org/wiki/NaN
🏴‍☠️
honey
Угу, я посмотрела ссылку)
honey
Функция которая должна оставлять только уникальные значения, и сортировать их таким образом, чтобы первым было значение фрукта, который Чаще всего встречается, а последним тот, что реже всего встречается.
honey
const fruits = ['banana', 'apple', 'banana', 'banana', 'grape', 'watermelon', 'grape'] // getUniqueAndSort(fruits) // [banana, grape, apple, watermelon]cv function getUniqueAndSort(array) { const initialObjectOfFruits= {} //{'banana':0} // инициализируем уникальный фрукт единицей: array.forEach(el => { initialObjectOfFruits[el] = 0 }) // считаем одинаковые фрукты: array.forEach(fruit => { initialObjectOfFruits[fruit] ++ }) const resultArray = [] // 1. Выбираем фрукт с наибольшим значением // 2. Пушим его первым в результирующий массив // 3. Удаляем фрукт из перебираемого обьекта: for(let i=0; i<Object.keys(initialObjectOfFruits).length;i++){ const biggest = Object.entries(initialObjectOfFruits).reduce((acc, curr) => acc[1] > curr[1] ? acc : curr)[0] resultArray.push(biggest) delete initialObjectOfFruits[biggest] } // Докидываем оставшиеся фрукты: for(let key in initialObjectOfFruits){ resultArray.push(key) } return resultArray } const noRepeatableAndSortingFruits = getUniqueAndSort(fruits)
honey
Длинновато, наверное, можно короче, но работает 👀
honey
Там в конце нужно добавить console.log(noRepeatableAndSortingFruits)
honey
honey
honey
Спокойной всем ночи🍰!
🏴‍☠️
const fruits = ['banana', 'apple', 'banana', 'banana', 'grape', 'watermelon', 'grape'] // getUniqueAndSort(fruits) // [banana, grape, apple, watermelon]cv function getUniqueAndSort(array) { const initialObjectOfFruits= {} //{'banana':0} // инициализируем уникальный фрукт единицей: array.forEach(el => { initialObjectOfFruits[el] = 0 }) // считаем одинаковые фрукты: array.forEach(fruit => { initialObjectOfFruits[fruit] ++ }) const resultArray = [] // 1. Выбираем фрукт с наибольшим значением // 2. Пушим его первым в результирующий массив // 3. Удаляем фрукт из перебираемого обьекта: for(let i=0; i<Object.keys(initialObjectOfFruits).length;i++){ const biggest = Object.entries(initialObjectOfFruits).reduce((acc, curr) => acc[1] > curr[1] ? acc : curr)[0] resultArray.push(biggest) delete initialObjectOfFruits[biggest] } // Докидываем оставшиеся фрукты: for(let key in initialObjectOfFruits){ resultArray.push(key) } return resultArray } const noRepeatableAndSortingFruits = getUniqueAndSort(fruits)
const fruits = ['banana', 'apple', 'banana', 'banana', 'grape', 'watermelon', 'grape']; const uniqSortedDesc = arr => { const map = new Map(); fruits.forEach(fruit => { const current = map.get(fruit); if (current) { map.set(fruit, current + 1) } else { map.set(fruit, 1); } }); return [...map.keys()]; } console.log(uniqSortedDesc(fruits));