Javascript 使用prototype创建全局对象
我有一个获取JSON响应的AJAX函数。我想使用prototype将这个JSON repsonse转换成一个全局对象。我没有一个清晰的原型概念,但我认为我的想法是正确的。如果我错了,请原谅我 这是密码Javascript 使用prototype创建全局对象,javascript,prototype,Javascript,Prototype,我有一个获取JSON响应的AJAX函数。我想使用prototype将这个JSON repsonse转换成一个全局对象。我没有一个清晰的原型概念,但我认为我的想法是正确的。如果我错了,请原谅我 这是密码 var RatesGlobal = {}; $('#tarrif').load("<?php echo base_url(); ?>index.php/rates/index", function (data) { RatesGlobal.prototype.tarrifR
var RatesGlobal = {};
$('#tarrif').load("<?php echo base_url(); ?>index.php/rates/index", function (data) {
RatesGlobal.prototype.tarrifRates = JSON.parse(data);
});
var RatesGlobal={};
$('#tarrif').load(“index.php/rates/index”,函数(数据){
RatesGlobal.prototype.tarrifRates=JSON.parse(数据);
});
我想稍后访问JSON字符串的值,如果问题不够清楚,请原谅。我不知道这是否是原型的正确用法。正确的方法是什么?您不需要任何原型。原型通常用于代码重用 使用:
无论如何,我不明白你为什么需要这个。完全忘记了窗口对象。谢谢,但是有没有一种方法可以用原型来实现呢?奇怪的是,load()是异步的,如果不等待响应,那么将其附加到何处并不重要。@Bazinga777刚刚添加了使用原型的示例。无论如何,在我看来这是没有道理的。@MinkoGechev:我只是好奇而已。谢谢你告诉我更好的方法。@Bazinga777不客气。不,我的问题不是关于响应,而是从响应中创建一个全局对象或变量。@Bazinga777然后简化代码,这样就不会涉及不必要的
加载
。load
的引入只会影响[a]同步性。看起来你并没有得到它?您正在使用load()
获取JSON,然后出于某种奇怪的原因,您希望获取该JSON,解析它,并获得一个全局值?为了什么?你知道在ajax请求完成之前不能使用JSON,而且load()
会自动在HTML中插入内容吗?对不起,我使用load的错误,我的想法是使用ajax创建全局对象。我的提问很糟糕,但@Minkos的答案正是我想要的。那么你应该接受它
$('#tarrif').load("<?php echo base_url(); ?>index.php/rates/index", function (data) {
window.GLOBAL = JSON.parse(data);
});
$('#tarrif').load("<?php echo base_url(); ?>index.php/rates/index", function (data) {
window.GLOBAL = Object.create(JSON.parse(data));
});