Javascript对象:当前或方法
javascript object : current or method?
这是代码:
var x = document.getElementById("x");
这是HTML:
<p id="x">text</p>
这是下一个javascript:
x.innerHTML = "newtext"
alert(x.innerHTML)
那么会发生什么呢?将x
保存信息时,使用
var x = document.getElementById("x")
和变量x
将改变,但不是HTML<p>
与idx
?
由于x是对DOM元素的引用,它将修改id - x的innerHTML。
演示:JSFiddle
var x = document.getElementById("x");
x.innerHTML = "newtext";
alert(x.innerHTML); //same as the below alert
alert (document.getElementById("x").innerHTML);
在这种情况下,引用<p> element
的var x
将改变HTML of <p> element
。
var x = document.getElementById("x");
x.innerHTML = "newtext"
alert(x.innerHTML); //return "newtext"
var y = document.getElementById("x");
alert(y.innerHTML); //returns "newtext"
使用javascript改变<p> element
的innerHTML
属性实际上已经改变了<p> element
的HTML
属性
变量x将仍然保持对id为"x"的DOM元素的引用,并且DOM元素的innerHTML将改变。所以如果你之后像这样做
var content = x.innerHTML
则内容将包含"newtext",但如果你这样做之后
x.innerHTML = "new newtext"
则content
仍然包含"newtext",但x的内容将发生变化。变量x
仍然是对相同DOM元素的引用。
相关文章:
- 序列化数据属性中对象的最可靠方法
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 如何从对象的原型方法访问JavaScript对象属性
- 为什么不推荐使用“with”?是否有更好或其他方法可以“下降”到对象的命名空间
- 设置嵌套对象属性的更好方法
- JQuery示例不起作用-“;对象没有't支持属性或方法'按钮'&”;
- 对象不支持属性或方法“自动完成”
- call()和apply()实际上是用来欺骗方法处理类似数组的对象的
- 对象文字方法上的Javascript绑定不起作用
- Meteor应用程序无法运行-对象#<编译器>没有方法'主机'
- 为什么我可以在Array属性对象中找到Javascript Array for Each方法
- Underscore.js某些对象的所有方法的总和
- 对象#<XMLHttpRequest>没有方法'完成'
- Es6:能够在设置/更新/删除对象属性时调用自定义方法
- 丢失对象“;这个“;方法中的上下文
- 如何在ajax中调用javascript对象的方法
- 为什么页面方法对象未定义
- 如何使用在另一个文件中定义的JavaScript方法/对象
- 如何告诉JsHint忽略“未解析的函数或方法”?对象上的警告
- 使用jinja/javascript动态创建方法/对象