1

Тема: Невідповідність для типу Symbol

Доброго дня!

В підручнику написано, що властивості об'єкта з типом Symbol сховані і не перебираються циклом for..in. Але код

let theTruth=Symbol();
let book={
    author:"Ivanov",
    title:"How to become rich",
    theTruth:"Fake for having goofs on"
};
console.log(Object.keys(book));
for (let f in book) {
    console.log(f + " - "+book[f]);
}

виводить всі властивості. В чому справа?

Заздалегідь дякую

2

Re: Невідповідність для типу Symbol

Я не знаю TypeScript, але з загальної практики мов програмування виглядає так, що змінна theTruth має тип Symbol, а змінна book (об'єкт?) містить елемент theTruth - стрічку. Просто два однакові ідентифікатори в різних просторах імен: theTruth - в загальному, book.theTruth - в book.

Подякували: Alex.O, FakiNyan, leofun013

3

Re: Невідповідність для типу Symbol

Дуже дякую за підказку! Все одно воно дещо складнонаворочено і не дуже ясно, чому так зроблено і чому про це не написали в мануалі, але наступний код:

let truth=Symbol();
let book={
    author:"Ivanov",
    title:"How to become rich",
    };
book[truth]="Fake for having goofs on";
for (let f in book) {
    console.log(f + " - "+book[f]);
}

працює бажаним чином

4

Re: Невідповідність для типу Symbol

Alex.O написав:

Дуже дякую за підказку! Все одно воно дещо складнонаворочено і не дуже ясно, чому так зроблено і чому про це не написали в мануалі, але наступний код:

let truth=Symbol();
let book={
    author:"Ivanov",
    title:"How to become rich",
    };
book[truth]="Fake for having goofs on";
for (let f in book) {
    console.log(f + " - "+book[f]);
}

працює бажаним чином

а як та книжка зветься, якщо не секрет?

5

Re: Невідповідність для типу Symbol

а як та книжка зветься, якщо не секрет?

Це не зовсім книжка, це відомий онлайновий мануал https://learn.javascript.ru/symbol. Там дещо є, але досить неявно

6

Re: Невідповідність для типу Symbol

Alex.O написав:

а як та книжка зветься, якщо не секрет?

Це не зовсім книжка, це відомий онлайновий мануал https://learn.javascript.ru/symbol. Там дещо є, але досить неявно

нууу, все зрозуміло... більше кацапський лайно-контент споживайте, то ще й не таке знайдете)))

Подякували: leofun01, koala2

7

Re: Невідповідність для типу Symbol

:)

FakiNyan написав:
Alex.O написав:

а як та книжка зветься, якщо не секрет?

Це не зовсім книжка, це відомий онлайновий мануал https://learn.javascript.ru/symbol. Там дещо є, але досить неявно

нууу, все зрозуміло... більше кацапський лайно-контент споживайте, то ще й не таке знайдете)))