2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2, 3, 4  След.
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 10:00 
Аватара пользователя
Ktina в сообщении #1325316 писал(а):
Что я не так делаю?

Что такое "n | 0" (и где Вы про такое вычитали?)

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 10:44 
Это приведение к целому. В JavaScript нет отдельного типа целых. Все переменные вещественные. Но есть битовые операции, которые приводят свои аргументы к целому. "n | 0" - тривиальная битовая операция, которая сохраняет свой левый аргумент (предварительно округлённый к целому).

Ktina, пожалуйста, не делайте так. JavaScript - язык с неудачной системой типов, которая научит вас плохому. Вы научитесь бороться с особенностями языка, а не решать задачи. Сама по себе такая борьба может быть интересной и увлекательной, но для обучения подходит плохо.

Вот интерпретатор Python. В Python система типов более традиционная, на нём легче учиться программировать.

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 10:50 
slavav в сообщении #1325351 писал(а):
В Python система типов более традиционная

Не далее чем сегодня ночью клал в питонный словарь значения по ключам True и False, а оказывались они там под ключами 1 и 0 :D Потом гуры мне объяснили, что это (наследование булов от интов) сделано ради совместимости с Си, в котором нет булевских типов. Но традиционным я бы это не назвал. И думаю, известный питонист Навальный со мной согласится :lol:

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 11:04 
slavav в сообщении #1325351 писал(а):
В Python система типов более традиционная, на нём легче учиться программировать.
Ну уж нет, если строгая типизация - только pascal или C, только хардкор! А заодно указатели и ручное управление памятью. 8-)

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 11:07 
Аватара пользователя
slavav в сообщении #1325351 писал(а):
Это приведение к целому.

Это не приведение к целому! это побитовое или, которое выполняется с целыми числами в 32-битном представлении.

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 11:09 
Термин строгая применительно к типизации слабо формализован и может означать что угодно. Удобнее применять чуть более определенные термины - статическая/динамическая и сильная/слабая. В С с его автокастами типизация слабая, но с претензией на статическую. Хотя я бы ее и статической не счел.

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 21:09 
Аватара пользователя

(Оффтоп)

Geen в сообщении #1325360 писал(а):
slavav в сообщении #1325351 писал(а):
Это приведение к целому.

Это не приведение к целому! это побитовое или, которое выполняется с целыми числами в 32-битном представлении.

Это особенности Javascript.
Код:
bash-3.2$ node
> let x = '1234.567'
undefined
> x
'1234.567'
> typeof x
'string'
> let y = x | 0
undefined
> y
1234
> typeof y
'number'
>

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 21:49 
Аватара пользователя
Corund в сообщении #1325527 писал(а):
Это особенности Javascript.

Ну округлите три миллиарда с половиной ;-)

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 21:50 

(Оффтоп)

Corund в сообщении #1325527 писал(а):
Это особенности Javascript
Да он весь из особенностей состоит... post1201153.html#p1201153

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 22:16 
Аватара пользователя
rockclimber

(Оффтоп)

В профессии, которую девочка предпочла профессии программиста, особенностей, увы, не меньше :cry:

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение09.07.2018, 23:50 
Не хотел палить контору, но, похоже, придется. На просторах сети есть вот такая штука http://slack-ru.hexlet.io/ Рекомендую, если действительно серьезно (в чем я, впрочем, глубоко сомневаюсь) желаете освоить программизм и жаваскрипт в частности.

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение10.07.2018, 00:01 
Аватара пользователя
_Ivana
Мне СМСку выслали, чтобы там авторизироваться. Надеюсь, она не стоит 1000 долларов?

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение10.07.2018, 05:45 
Аватара пользователя
Geen в сообщении #1325534 писал(а):
Corund в сообщении #1325527 писал(а):
Это особенности Javascript.

Ну округлите три миллиарда с половиной ;-)

Код:
~$ node
> x = Number.MAX_SAFE_INTEGER
9007199254740991
> y = x | 0
-1
>

Просто в побитовых операциях левый операнд после преобразования или парсинга в целое число просто и без затей обрезается до 32 бит.
ps. правый, впрочем, тоже.

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение12.09.2018, 15:19 
Ktina в сообщении #1324986 писал(а):
Но друг не должен видеть код программы


Есть такая штука, называется "обфускатор", он превратит твой код в не читаемую белиберду.

Код:
var _0x33ef=["\x57\x68\x61\x74\x27\x73\x20\x79\x6F\x75\x72\x20\x6E\x61\x6D\x65\x3F","\x59\x6F\x75\x72\x20\x6E\x61\x6D\x65\x20\x69\x73\x3A\x20","\x6C\x6F\x67"];var name=prompt(_0x33ef[0]);console[_0x33ef[2]](_0x33ef[1]+ name)

 
 
 
 Re: Как послать другу программу на JavaScript?
Сообщение12.09.2018, 15:24 
Увидев такое, он может и перестать дружить.

 
 
 [ Сообщений: 49 ]  На страницу Пред.  1, 2, 3, 4  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group