@JSlang

Страница 2054 из 2237
Роман
22.07.2018
22:50:27
Вы исходили из предположения что в JS числа 32 разрядные, но это не так.

Sviat
22.07.2018
22:51:03
i << 0 — преобразует i в 32 битное

Роман
22.07.2018
22:52:48
Потому что ты считаешь что оно меняет знак при битовом сдвиге.

Google
Роман
22.07.2018
22:53:00
i << 0 — преобразует i в 32 битное
Где это указано? Интересно почитать.

Sviat
22.07.2018
22:53:27
Побитовые операторы в JavaScript работают с 32-битными целыми числами в их двоичном представлении. https://learn.javascript.ru/bitwise-operators

Роман
22.07.2018
22:59:58
"двоичное представление" и "преобразуется в 32-битное" разные вещи. Все числа в формате IEEE 754. А представления можно любые использовать, но для этого лучше пользоваться DataView, если нужны низкоуровневые операции.

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

Роман
22.07.2018
23:15:25
Ну ты же понимаешь что такое представление? Одно и то же можно представить и как число и как букву и как цвет пикселя. Но это всего лишь представление. Формат хранения чисел в JS от этого не поменяется.

Sviat
22.07.2018
23:16:53
А при чем тут оно

Если бы было 64-битное число, его бы представление в двоичной системе было 64 символа А сдвиги работают с 32 битными

Роман
22.07.2018
23:26:16
но 4294901760 не валидное значение для цвета.
Птыаюсь понять твою цель всё же. Почему ты думаешь что это число не валидное? Любое число от 0 до 4294967295 валидно для цвета (RGBA, 4 байта).

Роман
22.07.2018
23:26:51
Интересно какая в итоге функция получилась и на сколько она быстрей родных методов будет.

Google
Sviat
22.07.2018
23:26:55
оно не видит цвета > 2 ** 31

Роман
22.07.2018
23:41:34
оно не видит цвета > 2 ** 31
У них получается не используется альфа-канал?

Sviat
22.07.2018
23:43:27
У них получается не используется альфа-канал?
не используется, но задавать обязательно

Роман
22.07.2018
23:44:48
У них там int32 (который знаковый). Т.е. от -2^31 до 2^31-1.

И в доках пишут RGB24 format, так что не понятно где там альфа обязана быть.

Sviat
22.07.2018
23:51:00
Роман
22.07.2018
23:53:36
Это библиотека какая-то я так понял. Ты можешь посмотреть во что он конвертирует цвета? [0, 0, 0, 0], [128, 128, 128, 128], [255, 255, 255, 255], например. Как-то же он их хранит/обрабатывает.

Oleg
23.07.2018
03:16:01




Denis
23.07.2018
04:09:15
как сделать так, чтобы график показывался только тогда, когда появился data2.json https://pastebin.com/GnNvRuDG

сейчас, когда json есть - всё норм, когда нет - ошибка 404 и скрипт зависает

Oleg
23.07.2018
04:18:24


Denis
23.07.2018
04:38:20
https://pastebin.com/4Z54zdg7 почему когда json существует - страница грузится без ошибок, а если json нет - сначала вылазиет GET http://localhost:63343/web/data999.json 404 (Not Found) а после того как я добавляю json -вылазиет Uncaught TypeError: Cannot read property 'update' of undefined

Denis
23.07.2018
04:43:33
Oleg
23.07.2018
04:53:08
https://codesandbox.io/s/m481z2v38y
Ты что-то нерабочее выложил, но всё равно видно почему так ) ты запрашиваешь json, потом зачем-то опять его запрашиваешь, потом пытаешься его отрисовать (а данных нет), из-за этого myChart будет undefined, а потом пытаешься еще обратиться к myChart.update… короче, много странных моментов в этом коде

Denis
23.07.2018
04:55:33
как сделать else?)

почему так не работает var lol = (exist(json)); if (lol == true){load()} else{ while (lol == false) {lol = setTimeout(exist(json), 3000)} } load();

Google
Denis
23.07.2018
05:04:49
сраный джаваскрипт ?

var lol = (exist(json)); if (lol){load()} else{ while (!lol) {lol = setTimeout(exist(json), 3000)} } load();

так тоже

Oleg
23.07.2018
05:10:26
сраный джаваскрипт ?
отличный язык, просто тебе его надо подизучить. например, setTimeout бесполезно вызывать так, как ты вызываешь. попробуй в консоли setTimeout(console.log('wrong'), 3000), а затем setTimeout(() => {console.log('right')}, 3000) и посмотри разницу

Andrey ?
23.07.2018
05:11:50
сраный джаваскрипт ?
Кажется, дело не в js

Oleg
23.07.2018
05:11:55
без него зависает
не знаю что там зависает, но по поводу своей задачки лучше поспрашивай в @js_noobs_ru, там должны помочь

Andrey ?
23.07.2018
05:12:21
как
Выше дали чат

Denis
23.07.2018
05:12:40
Выше дали чат
там молчуны все, а мне срочно

Andrey ?
23.07.2018
05:13:02
Всем срочно ¯\_(ツ)_/¯

Denis
23.07.2018
05:13:59
Всем срочно ¯\_(ツ)_/¯
какую конкретрононо фцию вызывать

Denis
23.07.2018
05:22:24
Не setTimeout(a(), 1), а setTimeout(() => { a() }, 1)
Uncaught ReferenceError: a is not defined

Denis
23.07.2018
05:24:35
хром завис

Google
Admin
ERROR: S client not available

Вишневый чай
23.07.2018
06:17:05
Кто тут про по распутыванию говнокода? как это должно выглядеть если писать очевидным образом вызов функции в then

return params.process().then(this._done.bind(this, resolve))

Pavel
23.07.2018
06:18:37
чего сразу говнокода, норм написано)))

Andrey
23.07.2018
06:18:55
Хотя, будет только больше кода, это да.

Вишневый чай
23.07.2018
06:20:10
чего сразу говнокода, норм написано)))
ну писать в then сразу колбек без явного указания аргументов это такое себе

Andrey
23.07.2018
06:20:51
Ты же можешь _done переписать?

Pavel
23.07.2018
06:20:52
да вроде все понятно

resolve аргумент

bind для того что бы коллбек не писать

then(function (resolve) { this._done(resolve) })

Вишневый чай
23.07.2018
06:21:46
then(function (resolve) { this._done(resolve) })
ага ну вот и не фига )

Andrey
23.07.2018
06:21:51
Не переписывая _done ты код не изменишь.

Вишневый чай
23.07.2018
06:22:13
заменил на return params.process().then(() => this._done.bind(this, resolve)) поломалось

Pavel
23.07.2018
06:22:42
Andrey
23.07.2018
06:22:42
заменил на return params.process().then(() => this._done.bind(this, resolve)) поломалось
Логично, потому что ты внутреннюю функцию не вызвал.

Pavel
23.07.2018
06:22:58
bind возвращает функцию обертку, которую нужно вызвать

то есть в первом вареанте bind вернет тот самый колбек

Andrey
23.07.2018
06:23:07
Перепиши _done уже, чтобы она промис возвращала.

Google
Вишневый чай
23.07.2018
06:23:12
ааа над на call заменить точн

Pavel
23.07.2018
06:24:01
А я ошибки делаю в слове "варианте" с утра ? норм практика)))

Andrey
23.07.2018
06:25:06
Тупой вопрос, а зачем там call, если можно просто () => this._done(resolve)?

Pavel
23.07.2018
06:25:10
Перепиши _done уже, чтобы она промис возвращала.
судя по коду done не должен возвращать промис

Andrey
23.07.2018
06:25:46
судя по коду done не должен возвращать промис
Я сужу по названию resolve. Похоже что у человека вложенные промисы.

Pavel
23.07.2018
06:26:21
Ну ресолв это же агрумент полученый от then тут вероятнее всего был вопрос в не понимании как оно работает

Oleg
23.07.2018
06:28:33
then получает value, а не resolve. ну это так, чтобы не запутаться )

Pavel
23.07.2018
06:29:03
Кто уже как называет)

Страница 2054 из 2237