1.1, max (??), 11:20, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| +8 +/– |
String.padStart() и String.padEnd()... джва года ждал, спасибо
годнота
| |
|
|
3.74, Аноним (-), 13:07, 13/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Вместо sprintf
'this an string and this an ${val}' - возвращает обычную строку.
| |
|
|
3.66, rpm (?), 02:45, 13/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
> У тебя настолько кривые руки, что понадобилось выравнивание?
Какой мудрый коммент. Фсе ф шоке.
| |
|
2.93, Олег Торбасов (?), 17:50, 16/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
pad’ы легко прикручивались полифиллом. А вот async/await, будучи только синтаксическим сахаром над промисами, проясняет код и облегчает жизнь очень сильно. Правда, теперь я наблюдаю, как они расползаются по моим скриптам и подозреваю, что в конце концов все методы станут асинхронными (кроме конструкторов, с которыми так делать нельзя).
| |
|
1.4, Аноним (4), 12:06, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
И что неужели никто не скажет какой javascript плохой и все вокруг идиоты?
| |
|
2.5, A.Stahl (ok), 12:09, 12/07/2017 [^] [^^] [^^^] [ответить]
| +20 +/– |
>неужели никто не скажет какой javascript плохой
А то что небо голубое тебе не сообщить? Или что вода мокрая?
| |
2.6, антончик (?), 12:16, 12/07/2017 [^] [^^] [^^^] [ответить]
| +14 +/– |
Середина лета, Капитан Очевидность отдыхает на пляже, давайте не будем дёргать его по таким пустякам.
| |
2.7, Аноним (-), 12:18, 12/07/2017 [^] [^^] [^^^] [ответить]
| –3 +/– |
хелоуворлдщики на хаскеле любят поспать ввиду бессонных ночей за дотаном и КСочкой
| |
2.9, НяшМяш (ok), 12:50, 12/07/2017 [^] [^^] [^^^] [ответить]
| +2 +/– |
Обезьянки все такие мазохисты? Если в теме не унижают их любимый язык, то день не задался? Обычно программисты пьют кофе для заряда, а обезьянке нужно прочесть пару десятков оскорбительных комментов про яваскрипт, чтобы она могла продолжить овнокодить?
| |
|
|
4.17, Аноним (-), 13:41, 12/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
> хелоуворлд, чем тебе js не угодил?
А ссылочку на ядро, окружение или браузер на JS можно? А еще, состоятельность ЯП проверяется обычно компилятором или интерпретатором на нем самом - и тут вас, Бандерлогов, запросто обстваляют те же почитатели Каа.
Но вы и дальше продолжайте дружно повторять, что вы велики и достойны восхищения :)
| |
|
5.52, Отражение луны (ok), 20:57, 12/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Так вот как крутость языка измеряется. А я то думал эффективностью и простотой построения сложных конструкций.
Мб кинете ссылочку на удобную реализацию асинхрона на си?
| |
|
6.55, Аноним (-), 21:14, 12/07/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Так вот как крутость языка измеряется. А я то думал эффективностью и
> простотой построения сложных конструкций.
Крутость языка измеряется не хелловорлдами (тут вы проигрываете тем же хацкелям или лиспам и идете максимум наравне с питонам) или обещаниями пиарщиков , а тем, что на нем смогли такого нужного и большого написать.
Я правда не подумал, что для ЖопоСкритников ядро, браузер или хотя бы более-менее быстрый интерпретатор суть простые и тривиальные конструкции :(
| |
|
7.59, Аноним (-), 23:22, 12/07/2017 [^] [^^] [^^^] [ответить]
| –3 +/– |
Хелоуворлд не читатель?
>простотой построения сложных конструкций | |
|
8.64, Аноним (-), 00:57, 13/07/2017 [^] [^^] [^^^] [ответить] | +/– | Кстати, примеры простоты и эффективности построения сложных конструкций будут Ч... текст свёрнут, показать | |
|
|
|
|
|
13.80, Аноним (-), 18:24, 13/07/2017 [^] [^^] [^^^] [ответить] | –1 +/– | Охренеть Хеловорлд, js - внезапно, скриптовый язык, у него своя ниша, какое бол... текст свёрнут, показать | |
|
14.84, Аноним (-), 19:01, 13/07/2017 [^] [^^] [^^^] [ответить] | +/– | Что, сложно удержать в голове, что разные ветки дискуссий действительно РАЗНЫЕ и... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
|
|
2.11, Аноним (-), 13:06, 12/07/2017 [^] [^^] [^^^] [ответить]
| –5 +/– |
Яваскрипт - прекраснейший язык. И красота его не только в нововведениях типа:
> Разрешено оставлять запятые после последнего элемента в массивах и объектах (например, "var arr = [1, 2, 3,];"). В массивах также можно оставлять незаполненные элементы (например, "var arr = [1, 2, 3,,,];") вместо которых останутся пустые значения; | |
|
3.12, Аноним (-), 13:08, 12/07/2017 [^] [^^] [^^^] [ответить]
| +3 +/– |
Яваскрипт ужасный язык. Но знают об этом только те, кто на нем пишет. Ну и хелоуворлдщики на бейсике, конечно же.
| |
3.20, Я (??), 13:45, 12/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
я хочу объявить массив из 4-х элементов, последний из которых пустой и напишу:
var arr = [1, 2, 3,];
я хочу объявить массив из 3-х элементов, но лень удалять последнюю запятую, напишу:
var arr = [1, 2, 3,];
и в чём тут красота? бред полнейший.
| |
|
4.24, анонимус (??), 14:20, 12/07/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
я хочу объявить массив из 4-х элементов, последний из которых пустой и напишу:
var arr = [1, 2, 3,,];
я хочу объявить массив из 3-х элементов, но лень удалять последнюю запятую, напишу:
var arr = [1, 2, 3,];
поправил, не благодари helloword-anykey.
| |
|
5.39, _ (??), 16:42, 12/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ну не красиво же!
А как известно: "Некрасивые самолёты и летают плохо!" (С) приписывают Туполеву.
| |
|
4.28, rshadow (ok), 14:36, 12/07/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
Что значит пустой. Такое разве есть в JS?
var arr = [1, 2, 3, undefined];
var arr = [1, 2, 3, null];
var arr = [1, 2, 3, ''];
| |
|
5.60, Аноним (-), 23:27, 12/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
У него будет не пустой, а разрежённый. Это не тоже самое, что undefined в ячейке.
| |
5.67, rpm (?), 02:49, 13/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Что значит пустой. Такое разве есть в JS?
> var arr = [1, 2, 3, undefined];
> var arr = [1, 2, 3, null];
> var arr = [1, 2, 3, ''];
Массивы в жс фальшивые. На самом деле это хеши.
| |
|
4.37, Аноним Анонимович Анонимов (?), 16:33, 12/07/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
Попробую объяснить. Создание, заполнение массива на лету и инициализация массива это разные вещи. Одно дело, когда вы знаете, что у вас в массиве и поэтому инициализируете его с заданным количеством элементов, другое дело когда формируете массив на лету.
Вам ничто не мешает написать:
var arr = new Array(5) //создаст массив из 5 пустых элементов
для инициализации массива этого достаточно. Оператор [] актуален, когда, например, в цикле формируется динамическй массив.
var temp_arr = [];
for ( var i = 0; i < Math.floor( Math.random() * 1000 ); i++)
{
temp_arr.push(i);
}
Разница между new Array() и [] существенна только в контексте использования. Ну и инициализация массива с заданным количество элементов невозможна в [].
| |
|
5.62, Аноним (-), 23:28, 12/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
>создаст массив из 5 пустых элементов
Создаст разряженный массив (а не пустой). Учите уже матчасть. Тот же Array.foreach не будет его перебирать.
| |
|
|
3.27, Crazy Alex (ok), 14:29, 12/07/2017 [^] [^^] [^^^] [ответить]
| –3 +/– |
Как раз отличный пример обратного. Приняли бы одно ("запятая всегда означает присутствующий в массиве элемент со значением null") или второе ("дублирующиеся запятые игнорируются") - было бы ок. А так - какова будет длина массива "var arr = [1, 2, 3,];" и как это соотнесётся с длиной массива "var arr = [1, 2, 3,,];" ? Лично я ни одного констистентного решения не вижу.
| |
|
4.57, Аноним (-), 21:25, 12/07/2017 [^] [^^] [^^^] [ответить]
| +4 +/– |
http://es5.javascript.ru/x11.html#x11.1.4
Элементы массива могут быть пропущены в начале, в середине или в конце списка элементов. Если перед запятой в списке элементов отсутствует AssignmentExpression Выражение присваивания – т. е., запятая находится сразу в начале списка или непосредственно перед другой запятой – то пропущенный элемент массива увеличивает длину Array и индекс последующих элементов. Определение пропущенных элементов массива не производится. Элемент, пропущенный в конце массива, не увеличивает длину объекта Array.
| |
|
|
2.13, anon2000 (?), 13:10, 12/07/2017 [^] [^^] [^^^] [ответить]
| –6 +/– |
Сам JS - это наверное самое адекватное из всего стека веб-технологий.
| |
|
3.14, Crazy Alex (ok), 13:35, 12/07/2017 [^] [^^] [^^^] [ответить]
| +5 +/– |
Хм, скорее "наименее неадекватное". Учитывая, что весь стек совершенно чудовищен - не самое большое достижение.
| |
3.21, Аноним (-), 13:53, 12/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
Получается веб не адекватен, а JS да...
Адекватность предполагает соответствие чему-либо, поэтому "самых адекватных" должно быть как минимум два. Правда адекватны они будут только друг другу...
| |
|
4.26, Crazy Alex (ok), 14:24, 12/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Для данного случая - имеется в виду адекватность задачам, я полагаю. Сейчас веб - это в основном платформа для запуска приложений (от простых, которые мы по старой памяти обзываем страничками до всяких наворотов вроде графических редакторов и групвари). Этой задаче там действительно условно адекватен JS (тем менее адекватен, чем сложнее приложение), с остальным - всё хуже, дикая смесь легаси и попыток это легаси подправить.
| |
|
5.34, Аноним (-), 15:27, 12/07/2017 [^] [^^] [^^^] [ответить] | +1 +/– | Это понятно, тут не поспоришь Проблема в подходе Для веб, где JS условно являе... большой текст свёрнут, показать | |
|
6.38, anon2000 (?), 16:42, 12/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
>Он не хороший вообще, он просто соответствует текущему подходу в веб.
Проблема в том, что он не соответствует текущему подходу в веб. Да и вообще весь веб-стек не соответствует текущему подходу в веб.
| |
|
|
|
|
|
1.19, Аноним (-), 13:45, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> Разрешено оставлять запятые после последнего элемента в массивах и объектах (например, "var arr = [1, 2, 3,];"). В массивах также можно оставлять незаполненные элементы (например, "var arr = [1, 2, 3,,,];") вместо которых останутся пустые значения;
Ссылка вообще про про запятые после аргументов функции, поправьте.
| |
|
|
3.41, rshadow (ok), 17:01, 12/07/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
Да уже простые Простые форматы вымирают как мамонты. Везде компиляция: js, css, xls ... =(
| |
|
4.82, Аноним (-), 18:37, 13/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Это в уютненьких корпоративных проектах везде сборка, наверное. На аутсорсинговых просторах еще ни один проект в адекватном состоянии не пришел.
Вчера шок-контент был, когда увидел js, в шапке которого скопипастен минифицированный jquery, bootstrap и еще каких-то мелких библиотек, а внизу уже непосредственно код. js-сниппеты, с кодом, спрятанным в таймауте, чтоб jquery к этому моменту загрузился, несколько версий jquery на одной странице - это вообще в порядке вещей.
Так и живем. Лучше бы js родился компилируемым. Глядишь, такой х*рни бы не было. С бинарным кодом в копипасту не поиграешь.
| |
|
|
|
|
2.49, Kodir (ok), 18:58, 12/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
JS был укуренным от рождения :) Как только сделали динамический язык и кинули туда недотёп-ойтишнегов, тут *оно* по кочкам и понеслось! Их унюханые братья из стана PHP были только рады новым членам палаты.
| |
|
|
2.40, A.Stahl (ok), 17:00, 12/07/2017 [^] [^^] [^^^] [ответить]
| +2 +/– |
Так ведь свистелки теперь не свистят, а перделки не пердят. Как так жить?
| |
|
3.46, Аноним (-), 18:32, 12/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
> Так ведь свистелки теперь не свистят, а перделки не пердят. Как так жить?
Без лишних шумов и запахов.
| |
|
4.50, Kodir (ok), 19:00, 12/07/2017 [^] [^^] [^^^] [ответить]
| –3 +/– |
> Без лишних шумов и запахов.
:))) Шутки-шутками, но ведь есть реальные утырки-недоадмины-въебмастера, сайты которых вообще не работают бес крипта!! Реально за такое надо ломать ноги (оттуда же у них растут и руки).
| |
|
5.51, avig (?), 19:25, 12/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
web без скрипта!? это как!? а rich ui я тебе на чем сделаю? а разделение ui и бекенд? что обратно в 2000е? ты ебанутый?
| |
|
6.92, Аноним (-), 20:24, 14/07/2017 [^] [^^] [^^^] [ответить]
| +2 +/– |
типичная макака, даже без оскорблений высказаться не могет :)
| |
|
|
|
|
|
1.42, defu (?), 17:36, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> - Разрешено (https://github.com/tc39/proposal-trailing-function-commas) оставлять
> запятые после последнего элемента в массивах и объектах (например, "var arr
> = [1, 2, 3,];"). В массивах также можно оставлять незаполненные элементы
> (например, "var arr = [1, 2, 3,,,];") вместо которых останутся пустые
> значения;
В общем-то переводить надо аккуратней, НО самое смешное, что народ принялся бурно обсуждать, как будто это новая фича , то, что написано было уже внедрено с ES5.
А по линку, то что новое приняли, это "Trailing commas in function parameter lists", т.е. можно ставить запятую после последнего параметра в фунцкии, аля f(a,) тоже что и f(a).
| |
1.43, Ilya Indigo (ok), 17:49, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Осталось только чтобы Флэнаган выпустил очередное издание своей книги, и, конечно же, что бы Симфол+ её перевёл и выпустил.
| |
1.45, Zoolander (?), 18:21, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
C массивами и запятыми вопрос все же не ясен. Что за фигня вообще?
async/await - самая полезная штука из этого
| |
|
2.47, defu (?), 18:57, 12/07/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
Так а что не ясно то, это не новая фича. Они добавили только trailing commas для параметров функции, пример: f(a,).
А в массивах и объектах уже было давно это внедрено. Одну запятую в конце списка массива или объекта можно использовать, "для облегчения" добавления новых элементов ;)
К примеру:
const a = [1,2,3,] ; a.length; // размер масива 3, тоже что и a[1,2,3]
//
const obj = { a: 'one', b: 'two', c: 'three",} ;
//
Ну и если запятых в конце несколько, то это тоже самое что создать undefined элементы.
К примеру:
const a = [1,2,3,,,] ; a.length // размер массива будет 5, где пустые элементы образуют дыру, они неявно undefined. Но любые итераторы над массивом пропустят пустые элементы, т.е. не выведут что они undefined.
| |
|
|
4.71, angra (ok), 09:01, 13/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Представь, что массив состоит не из коротких чисел и записывается в одну строку, а из сложных элементов, каждый из которых на отдельной строке, а то и вовсе является блоком из десятка строк. И в процессе разработки элементы этого массива надо будет добавлять, удалять, менять местами. В этом случае каждый раз следить за добавлением/удалением запятой весьма напрягает.
| |
4.73, defu (?), 11:06, 13/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Основное применение этому, это git и подобное.
Когда элементы объекта/массива находятся в разных строках и, к примеру, ты добавляешь новую строку с новым элементом, тебе нужно поставить запятую в предыдущей строке за последним элементом. И это уходит как 2 строки исправления в гит, вместо одной когда используешь trailing commas.
| |
|
|
|
1.56, th3m3 (ok), 21:24, 12/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Что-то как-то негусто. Запятые какие-то, нафиг они нужны? И так нормально живётся. В общем, фичи какие-то такие, что и без этого нормально жили.
| |
1.68, Ydro (?), 08:45, 13/07/2017 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Лучше бы вместо этих методов, которые легко реализовать самим, сделали нормальную защиту "классов" вместо бубна в виде Object.freeze()
| |
|
2.79, Zoolander (?), 16:25, 13/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
Clojure большинство хомячков не осилят. Синтаксис другой.
Все мои знакомые и друзья видят синтаксис, боятся его, и тут же закрывают книги, статьи и прочее по Clojure и продолжают писать на JS, Java, Python, Go, сейчас еще Rust.
Функциональные языки после императивных тяжело даются. Императивщина головного мозга трудно лечится )
| |
|
3.81, defu (?), 18:29, 13/07/2017 [^] [^^] [^^^] [ответить]
| +/– |
Javascript как-бы мультипарадигмальный, может быть и процедурный и ооп и функциональный ;) В последний год все больше и больше народа переходят на функциональный стиль написания.
А про без запятых, так js тоже может =D , const arr = '1 2 3 4 5'.split(' ');
| |
|
4.87, Zoolander (?), 20:10, 13/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ха-ха, приколол )
Насчет моды на функциональное - согласен. Только это тупая мода без понимания откуда все это берется.
А все это новое уже было в LISP лет 60 назад... )
| |
|
5.88, Zoolander (?), 20:11, 13/07/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Ха-ха, приколол )
> Насчет моды на функциональное - согласен. Только это тупая мода без понимания
> откуда все это берется.
> А все это новое уже было в LISP лет 60 назад... )
И следующим этапом по-идее этим людям, кто в функциональном стиле пишет - перейти на что-то вроде ClojureScript, ан-нет )
| |
|
|
|
|
|