如果在最开始的时候,更新 attribute value 的值,property 的值也会随之改变
但是更新 property value 的值(在文本框输入或给 input.value 赋新值 ),attribute 的值不会随之改变,而且此时再更新 attribute 的值,property 的值也不再随之改变
这其实是脏值标记(dirty value flag)在起作用,dirty value flag 的初始值为 false,即 attribute value 的更新默认会改变对应的 property value,但是一旦用户交互修改了 property value,dirty value flag 的值就变为 true,即attribute value 的更新就不会改变对应的 property value 了
所以在实际项目中,我们一般都是在处理作为 property 的 value
补充:
Vue.js 一般使用 :value 即可让 value 作为 property
Vue.js 动态模版需要使用 :value.prop 才可让 value 作为 property