Javascript 如何使用普通js绑定对象以更新值?

Javascript 如何使用普通js绑定对象以更新值?,javascript,javascript-objects,Javascript,Javascript Objects,我有一个名为value的对象。是否可以将该值绑定到html元素比如angularjs 如果是,正确的方法是什么?还是不可能 这是我的演示: var ob={}; ob.name=“测试”; $('div').text(ob.name); $('button')。在('click',function()上{ ob.name=“更新名称”; console.log(ob.name)//名称更新 }) 按钮{ 边框:1px纯红; } 单击此处JavaScript本身不支持从头开始的双向绑定 要使示

我有一个名为value的对象。是否可以将该值绑定到html元素比如
angularjs

如果是,正确的方法是什么?还是不可能

这是我的演示:

var ob={};
ob.name=“测试”;
$('div').text(ob.name);
$('button')。在('click',function()上{
ob.name=“更新名称”;
console.log(ob.name)//名称更新
})
按钮{
边框:1px纯红;
}


单击此处
JavaScript本身不支持从头开始的双向绑定

要使示例正常工作,只需将您已经计算正确的表达式添加到onclick函数中

var ob={};
ob.name=“测试”;
$('div').text(ob.name);
$('button')。在('click',function()上{
ob.name=“更新名称”;
$('div').text(ob.name);
console.log(ob.name)//名称更新
})
按钮{
边框:1px纯红;
}


单击此处
Javascript允许创建对象“属性”,读取或写入可以执行用户定义的代码

您可以做的是创建HTML节点和带有属性的Javascript对象,以便在写入属性时,代码更新HTML节点:

var d = document.createElement("div");
document.body.appendChild(d);
var obj = {get value()  { return d.textContent; },
           set value(x) { d.textContent = x; }};
obj.value = "foo"; // Will also update d content

请注意,允许写入的属性需要一个存储数据的位置。。。在上面的例子中,我直接使用了
d.textContent
,因此两者实际上是同步的(更改
obj.value
会更改DOM节点,反之亦然)。

$('div').text(ob.name)将更新文本。单击处理程序中没有该文本。。您正在寻找类似于
双向绑定的东西
,但它本身不会发生!这可能会有帮助:拉杰什的回答对我有帮助。这个问题看起来像是对数据进行投标。你提出这个想法的人和他的没有关系question@3gwebtrain我很难理解你。我的回答有问题吗?