Чи є спосіб, який ми можемо перевизначити функцію JSON.parse?
Якщо так, будь ласка, вкажіть мені напрямок перевизначення.
Відповіді:
3 для відповіді № 1так, ти можеш
Object.getOwnPropertyDescriptor(JSON, "parse")
> {writable: true, enumerable: false, configurable: true}
Подобається це
(function(JSON) {
var oldParse = JSON.parse;
JSON.parse = function newParse() {
}
}(JSON))
1 для відповіді № 2
Наступне завдання повинно виконати:
JSON.parse = function(str) {
return { "foo": "bar" };
};
var res = JSON.parse("aaaa");
console.log(res);
1 для відповіді № 3
Це буде корисно для вас
JSON.prototype.parse= function(str)
{
// your custom code should be here
}
Або ви можете зробити користувацький клас JSON для досягнення фактичної функції JSON
function CustomJSON() {};
CustomJSON.prototype = new JSON;
CustomJSON.prototype.__super__ = JSON;
CustomJSON.prototype.parse= function(str) {
console.log("called CustomJSON.parse");
// calling JSON.parse();
this.__super__.prototype.parse.call(this);
};