Size: a a a

JavaScript Noobs — сообщество новичков

2020 December 14

AE

Alexander Epifanov in JavaScript Noobs — сообщество новичков
Dmitry
Я решаю след. задачу: написал класс Interval в котором реализовал метод Interval.plus(b) мне надо чтоб после работы метода объект на котором позвали эту функцию не изменился. Да, код написал. Но сейчас хочу дописать модульный тест, который проверяет этот факт. И понимаю что не понимаю, как проверять "А изменился ли объект или нет?". В python есть hash() . В JS пока не вижу подобного
точного ответа на нативном js я не подскажу, но смотреть надо в сторону md5
источник

D

Dmitry in JavaScript Noobs — сообщество новичков
Alexander Epifanov
точного ответа на нативном js я не подскажу, но смотреть надо в сторону md5
У меня вообще бредовая мысль приходит в голову. Взять перевести в JSON, а потом обратно
источник

AE

Alexander Epifanov in JavaScript Noobs — сообщество новичков
Dmitry
У меня вообще бредовая мысль приходит в голову. Взять перевести в JSON, а потом обратно
как вариант, тогда вам надо сравнивать не хэши, а объекты, может это и проще
источник

AE

Alexander Epifanov in JavaScript Noobs — сообщество новичков
Dmitry
У меня вообще бредовая мысль приходит в голову. Взять перевести в JSON, а потом обратно
toString делает value строкой, parseInt числом, JSON.stringify объект строкой json
источник

D

Dmitry in JavaScript Noobs — сообщество новичков
Другой вопрос. У меня есть код:
    toString() {
       const deciseconds = this._deciseconds % DECISECONDS_IN_SEC;
       const seconds = (this._deciseconds / DECISECONDS_IN_SEC) % SECONDS_IN_MIN;
       const minutes = this._deciseconds / DECISECONDS_IN_MIN;
       return `${Math.floor(minutes)}:${Math.floor(seconds)}.${deciseconds}/${this._distance}`;
   }


Если вызову его два раза в разные переменные. Они будут указывать на одну и ту же строку или это будут две разные строки хоть и одинаковые по содержанию? Я пока не могу понять где адреса посмотреть в VsCode при работе с Nodejs
источник

S

Sm•ok 😈✔️ in JavaScript Noobs — сообщество новичков
Dmitry
Я решаю след. задачу: написал класс Interval в котором реализовал метод Interval.plus(b) мне надо чтоб после работы метода объект на котором позвали эту функцию не изменился. Да, код написал. Но сейчас хочу дописать модульный тест, который проверяет этот факт. И понимаю что не понимаю, как проверять "А изменился ли объект или нет?". В python есть hash() . В JS пока не вижу подобного
Proxy же нужен
источник

S

Sm•ok 😈✔️ in JavaScript Noobs — сообщество новичков
Если объект изменится, то ты узнаешь
источник

DP

Defragmented Panda in JavaScript Noobs — сообщество новичков
Dmitry
Другой вопрос. У меня есть код:
    toString() {
       const deciseconds = this._deciseconds % DECISECONDS_IN_SEC;
       const seconds = (this._deciseconds / DECISECONDS_IN_SEC) % SECONDS_IN_MIN;
       const minutes = this._deciseconds / DECISECONDS_IN_MIN;
       return `${Math.floor(minutes)}:${Math.floor(seconds)}.${deciseconds}/${this._distance}`;
   }


Если вызову его два раза в разные переменные. Они будут указывать на одну и ту же строку или это будут две разные строки хоть и одинаковые по содержанию? Я пока не могу понять где адреса посмотреть в VsCode при работе с Nodejs
зависит от того куда указывает this. это может быть две разные ссылки на тот же обьект. или разные ссылки на разные обьекты
источник

D

Dmitry in JavaScript Noobs — сообщество новичков
Defragmented Panda
зависит от того куда указывает this. это может быть две разные ссылки на тот же обьект. или разные ссылки на разные обьекты
На один и тот же объект
источник

DP

Defragmented Panda in JavaScript Noobs — сообщество новичков
Dmitry
На один и тот же объект
const создает новый обьект внутри функции

но присваивание строки не копирует саму строку а копирует лишь указатель. насколько я вкурсе
источник

AE

Alexander Epifanov in JavaScript Noobs — сообщество новичков
Dmitry
Другой вопрос. У меня есть код:
    toString() {
       const deciseconds = this._deciseconds % DECISECONDS_IN_SEC;
       const seconds = (this._deciseconds / DECISECONDS_IN_SEC) % SECONDS_IN_MIN;
       const minutes = this._deciseconds / DECISECONDS_IN_MIN;
       return `${Math.floor(minutes)}:${Math.floor(seconds)}.${deciseconds}/${this._distance}`;
   }


Если вызову его два раза в разные переменные. Они будут указывать на одну и ту же строку или это будут две разные строки хоть и одинаковые по содержанию? Я пока не могу понять где адреса посмотреть в VsCode при работе с Nodejs
вызовешь куда? в другую переменную? что значит на одну и туже строку? это будут две разные переменные, и возможно одинаковые по содержимому
источник

D

Dmitry in JavaScript Noobs — сообщество новичков
Alexander Epifanov
вызовешь куда? в другую переменную? что значит на одну и туже строку? это будут две разные переменные, и возможно одинаковые по содержимому
const s1 = int1.toString();
const s2 = int1.toString();

Вот мне надо понимать, а что будет в этом коде? Я понимаю что s1, s2 указывают на объекты строк. Вопрос каких строк? Каждый раз когда вызван toString() , то будет создана новая строка? Или же нет? Тогда по содержимому одинаковы, но сами адреса строк разные. Вот мне интересно, как все на самом деле?
источник

AE

Alexander Epifanov in JavaScript Noobs — сообщество новичков
Dmitry
const s1 = int1.toString();
const s2 = int1.toString();

Вот мне надо понимать, а что будет в этом коде? Я понимаю что s1, s2 указывают на объекты строк. Вопрос каких строк? Каждый раз когда вызван toString() , то будет создана новая строка? Или же нет? Тогда по содержимому одинаковы, но сами адреса строк разные. Вот мне интересно, как все на самом деле?
будут две переменные, независимые друг от друга, и если их содержимое будет равно, это две разные переменные
источник

.

. in JavaScript Noobs — сообщество новичков
Rostislav
Я работал на кворке. Биржа отличная, за исключением того, что приходится ждать, что вас найдут(там можно откликаться на заказы, но установлен лимит). Там хотя бы нет демпинга и ниже 500 рублей никто не выставит. Комиссия всегда 20%.
Сложно взять первый заказ?
источник

D

Dmitry in JavaScript Noobs — сообщество новичков
Alexander Epifanov
будут две переменные, независимые друг от друга, и если их содержимое будет равно, это две разные переменные
int1.toString() дергает код, который привел в https://t.me/js_noobs_ru/475887 . Вот смотря на этот код могу сделать предположение, что интерпретатору дешевле сделать строку с нуля, чем куда-то кэшировать . Так ли это?
источник

R

Rostislav in JavaScript Noobs — сообщество новичков
.
Сложно взять первый заказ?
У меня получилось как-то сразу, главное не делать кворки на отъебись
источник

AE

Alexander Epifanov in JavaScript Noobs — сообщество новичков
а куда девается первоначальный const s1, const s2?
источник

.

. in JavaScript Noobs — сообщество новичков
Rostislav
У меня получилось как-то сразу, главное не делать кворки на отъебись
А портфолио было?
источник

R

Rostislav in JavaScript Noobs — сообщество новичков
.
А портфолио было?
Обязательно
источник

D

Dmitry in JavaScript Noobs — сообщество новичков
Alexander Epifanov
а куда девается первоначальный const s1, const s2?
Я пишу модульный тест. Эти переменные будут содержать исходные "эталонные" значения. После вызова метода я буду проверять их содержимое изменилось или нет
источник