После проверки исходного кода кажется, что различия между putwee put и element очень минимальны.
Основное отличие заключается в том, что put, по-видимому, возвращает объект, который был ранее в позиции ключа, который вы ввели в свойствахкарта.Так что, если у вас был JSONObject, структурированный так:
{
"steve": 4,
"betty": 5
}
и вы выполнили такую команду:
Object frank = myJsonObject.put ("steve", 10);
Значение frank теперь будет равно 4, а объект json теперь будет выглядеть так:
{
"steve":10,
"betty":5
}
Если бы вы использовали .element("steve", 10)
;в той же ситуации объект, возвращаемый методом, на самом деле является вашим JSONObject.Другое различие между ними состоит в том, что первый параметр метода put
является объектом, а первый параметр метода element
- String
.Метод put
просто выполняет String.valueOf()
для первого отправленного в него параметра, а затем вызывает метод element
, поэтому в основном они оба делают одно и то же, только put
более гибок и технически допускает нестроковые ключикоторые затем преобразуются в строки перед вызовом метода element
.
В двух словах, они имеют разные параметры и возвращаемые значения, но метод put
в любом случае просто вызывает метод элемента, так что в действительности это не так.разница в JSONObject, но, возможно, во внешнем коде.
Я предполагаю, что пользователи jQuery предпочтут использовать element
из-за сходства с этим языком в том, что метод возвращает вызывающий объект.