我正在编写一个简单的JavaScript函数,它接受一个td(表格单元格)并给它一个红色边框样式或关闭它。代码是:
function doStuff(theCell)
{
var highlight = "2px solid rgb(255, 0, 0)";
if(borderStyle==highlight)
{
theCell.style.border="";
}
else
{
theCell.style.border=highlight;
}
}
这很好用。但是为了尝试使代码更清晰,我试图用变量替换css边框样式(在第一个下面声明):
var borderStyle = theCell.style.border;
当我在相等比较中使用它时,这可以正常工作,但是当我把它放在'else'子句中的样式赋值中时,它不行。
我一定是想做一些非常愚蠢的事情。任何人都可以解释一下。
答案 0 :(得分:2)
如果编写var borderStyle = theCell.style.border;
等代码,Javascript不会创建对象的引用。这里仅将border的值的副本分配给borderStyle。 theCell
的物体在其位置上没有受到伤害。没有创建参考。