在js文件中声明javascript对象。
我想在js文件中声明一个对象,如: var o={p:1} 然后在我的html文件中为它创建一个手表在js文件中声明javascript对象。,javascript,html,Javascript,Html,我想在js文件中声明一个对象,如: var o={p:1} 然后在我的html文件中为它创建一个手表 <script> var o = {p:1}; o.watch("p",function (id, oldval, newval) { alert(newval); return newval; }); o.p=count; </script> var o={p:1}; o、 手表(“p”,功能(id、旧值、新值)
<script>
var o = {p:1};
o.watch("p",function (id, oldval, newval)
{
alert(newval);
return newval;
});
o.p=count;
</script>
var o={p:1};
o、 手表(“p”,功能(id、旧值、新值)
{
警报(newval);
返回newval;
});
o、 p=计数;
这段代码在我的html中有效,但如果我在js文件中声明“var o”,它将不起作用。我之所以要这样做,是因为我想在js文件中修改对象的值,并在html中检测它。我能想到的跟踪对象变量更改的唯一方法是使用setter func,而不是直接更新值:
<script type="text/javascript">
var o = {
p:1,
q:0,
watches: [],
setProp: function(prop, newVal) {
var oldVal = this[prop];
this[prop] = newVal;
if(typeof(this.watches[prop]) == 'function')
{
this.watches[prop](prop, oldVal, this['prop']);
}
}
};
o.watches["p"] = function (id, oldval, newval) {
alert(newval);
return newval;
};
o.setProp('p', count);
o.setProp('q', 0 - count);
</script>
变量o={
p:1,
问:0,,
手表:[],
setProp:函数(prop,newVal){
var oldVal=此[prop];
这个[prop]=newVal;
if(typeof(this.watchs[prop])=='function')
{
这个.手表[道具](道具,旧的,这个[道具]);
}
}
};
o、 手表[“p”]=功能(id、旧值、新值){
警报(newval);
返回newval;
};
o、 setProp('p',计数);
o、 setProp('q',0-计数);
这是我能想到的最简单的方法,尽管您可能想在o中添加一些更好的错误检查或addWatch(prop,func)方法。我能想到的跟踪对象变量更改的唯一方法是使用setter func,而不是直接更新值:
<script type="text/javascript">
var o = {
p:1,
q:0,
watches: [],
setProp: function(prop, newVal) {
var oldVal = this[prop];
this[prop] = newVal;
if(typeof(this.watches[prop]) == 'function')
{
this.watches[prop](prop, oldVal, this['prop']);
}
}
};
o.watches["p"] = function (id, oldval, newval) {
alert(newval);
return newval;
};
o.setProp('p', count);
o.setProp('q', 0 - count);
</script>
变量o={
p:1,
问:0,,
手表:[],
setProp:函数(prop,newVal){
var oldVal=此[prop];
这个[prop]=newVal;
if(typeof(this.watchs[prop])=='function')
{
这个.手表[道具](道具,旧的,这个[道具]);
}
}
};
o、 手表[“p”]=功能(id、旧值、新值){
警报(newval);
返回newval;
};
o、 setProp('p',计数);
o、 setProp('q',0-计数);
这是我能想到的最简单的事情,尽管你可能想添加一些更好的错误检查或者一个addWatch(prop,func)方法o.您最好将整个html代码发布到
标记下或中。js
文件类似。您是否正在.js
文件中添加
,并且在执行此操作时,您还可以包含整个CSS代码。您最好将整个html代码发布到标记下或中。js
文件是类似。您是否正在.js
文件中添加
,并且在添加过程中,您还可以包含整个CSS代码。nb:这不是非常安全或可靠的代码。我不会按原样在生产中使用它,但会给您一个想法:)nb:这不是非常安全或可靠的代码。我不会按原样在生产中使用它,但会给您一个想法:)