Nano Hash - криптовалюты, майнинг, программирование

Есть ли литерал Set в JavaScript?

Я могу создать набор с помощью new Set() так же, как я могут использовать конструкторы Array, Object, Boolean или Number.

Но есть ли заданный литеральный синтаксис, например, для массивов, объектов, логических значений, чисел и т. д.?


Ответы:


1

Как указывали другие, синтаксиса литерала Set (или Map) еще нет. В этой теме обсуждения ES< было несколько идей. /a> и в после обсуждения в Твиттере.

Несколько предлагаемых примеров синтаксиса:

const set = {<1, "two", false>}; // by Brendan Eich
const set = {. 1, "two", false .}; // by Axel Rauschmayer

Однако, насколько я вижу, предложений по реализации какой-либо из них пока нет.

12.02.2016
  • Хорошо упомянуть обсуждение в твиттере. Помогает лучше понять. Надеюсь, литералы скоро будут добавлены. Я вообще не использую новое ключевое слово. 07.06.2017
  • Как насчет {1, 2, 3}. Для пустого набора вы можете сделать {,}. 10.06.2019
  • @JamRisser, как обсуждалось в обсуждении, указанном выше, этот синтаксис нельзя использовать, потому что, в отличие от языков программирования, таких как Python, JavaScript поддерживает сокращенный синтаксис для объектов, где { x, y } равно { x: x, y: y }, если вы уже определили x и y. 08.12.2019

  • 2

    Ну, для Set() нет буквального синтаксиса, но вместо этого вы можете использовать массив. Они оба очень похожи, и между ними можно легко переключаться с помощью функций:

    Array.from(mySet) // Converts mySet into an array
    new Set(myArray) // Creates a set from myArray, yes I know
    
    12.02.2016
  • Это не ответ на вопрос, в котором уже упоминается использование конструктора Set (которому обычно задается массив). 02.11.2018
  • Я бы сказал, что это отвечает на вопрос, потому что сам вопрос заключается в том, есть ли буквальный синтаксис для Set(), и ответ - нет, но вот альтернатива. 02.11.2018
  • @jered В этом ответе нет ссылок на фоновое обсуждение, но вот альтернатива вам, которая уже упоминалась в вопросе. 09.12.2019

  • 3

    Нет, единого синтаксиса для объявления Set не существует. В случае сомнений проконсультируйтесь со спецификацией.

    12.02.2016
  • Хотя я не думаю, что ваш ответ неверен, стоит отметить, что этот раздел, по-видимому, не охватывает литералы массивов или литералы объектов, поэтому не является отличным источником для его опровержения. 12.02.2016
  • @JamesThorpe Хороший вопрос, я только что перешел к разделу литералов. Я исправлю это. 12.02.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..