169 похожих чатов

Другой вопрос. У меня есть код: 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

14 ответов

11 просмотров

зависит от того куда указывает this. это может быть две разные ссылки на тот же обьект. или разные ссылки на разные обьекты

Dmitry
На один и тот же объект

const создает новый обьект внутри функции но присваивание строки не копирует саму строку а копирует лишь указатель. насколько я вкурсе

вызовешь куда? в другую переменную? что значит на одну и туже строку? это будут две разные переменные, и возможно одинаковые по содержимому

Dmitry- Автор вопроса
Alexander Epifanov
вызовешь куда? в другую переменную? что значит на ...

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

Dmitry
const s1 = int1.toString(); const s2 = int1.toStri...

будут две переменные, независимые друг от друга, и если их содержимое будет равно, это две разные переменные

Dmitry- Автор вопроса
Alexander Epifanov
будут две переменные, независимые друг от друга, и...

int1.toString() дергает код, который привел в https://t.me/js_noobs_ru/475887 . Вот смотря на этот код могу сделать предположение, что интерпретатору дешевле сделать строку с нуля, чем куда-то кэшировать . Так ли это?

Dmitry
int1.toString() дергает код, который привел в http...

а куда девается первоначальный const s1, const s2?

Dmitry- Автор вопроса
Alexander Epifanov
а куда девается первоначальный const s1, const s2?

Я пишу модульный тест. Эти переменные будут содержать исходные "эталонные" значения. После вызова метода я буду проверять их содержимое изменилось или нет

Dmitry- Автор вопроса
Alexander Epifanov
а куда девается первоначальный const s1, const s2?

Как-то так: test(`Interval.plus() doesn't mofify operands`, () => { const { int1, int2 } = ['2:28', '2:29.1'].map(s => Interval.fromString(s)); const s1 = int1.toString(); const s2 = int2.toString(); int1.plus(int2); expect(int1.toString()).toBe(s1); expect(int2.toString()).toBe(s2); });

Dmitry
Я пишу модульный тест. Эти переменные будут содерж...

и что? читайте про выделение памяти при создании переменных const, var, let

Dmitry
const s1 = int1.toString(); const s2 = int1.toStri...

ты просто сравнишь строки по значению

Dmitry
Как-то так: test(`Interval.plus() doesn't mofif...

Попробуй всё-таки Proxy. Может это то что тебе нужно. class Test { constructor () { this._value = 1 } methodA () { console.log('methodA') this._value = 2 return true } methodB () { console.log('methodB') return true } } const instance = new Test() const proxy = new Proxy(instance, { set: (obj, prop, value) => { console.log('trying to change the value') return Reflect.set(obj, prop, value) } }) proxy.methodA() proxy.methodB() console.log('change directly') proxy._value = 3

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта