Я изучаю JSON, но я узнал, что вы можете помещать так называемые "хэши" в JSON? Где я могу узнать, что такое хэш? Или вы могли бы объяснить мне, что такое хэш? Кроме того, что такое hashmap? У меня есть опыт работы на С++ и С#, и я изучаю JS, JQuery и JSON.
Что такое хэш в отношении JSON?
Ответ 1
A Hash - это разреженный массив, который использует произвольные строки/объекты (в зависимости от реализации, это зависит от языков программирования), а не от простых целых чисел в качестве ключей.
В Javascript любой объект является технически хешем (также называемым словарем, ассоциативным массивом и т.д.).
Примеры:
var myObj = {}; // Same as = new Object();
myObj['foo'] = 'bar';
var myArr = []; // Same as = new Array();
myArr[0] = 'foo';
myArr[1] = 'bar';
myArr['blah'] = 'baz'; // This will work, but is not recommended.
Теперь, поскольку JSON в основном использует конструкторы JS и некоторые строгие правила для определения переносимых данных, эквивалент myObj выше:
{ "foo" : "bar" };
Надеюсь, что это поможет.
Ответ 2
Hash = словарь.
А хэш:
{ "key1": "value1", "key2": "value2" }
Ответ 3
I hash - это случайное число, которое генерируется из части данных и всегда одинаково для одного и того же ввода. Например, если вы загружаете файлы с некоторых веб-сайтов, они будут предоставлять хэш данных, чтобы вы могли проверить, что ваша загрузка не повреждена (что изменило бы хэш). Другое приложение хэшей находится в хеш-таблице (или хэш-карте). Это очень быстрая ассоциативная структура данных, в которой хеши используются для индексации в массив. std:: unorderd_map в С++ - пример этого. Вы можете сохранить хэш в JSON как строку, например, что-то вроде "AB34F553", и использовать это для проверки данных. JSON также поддерживает элементы типа словаря. Люди могут ссылаться на них как на хэш-таблицы, но это было бы технически неверно, поскольку нет конкретной реализации структуры данных, связанной с данными JSON.