在JavaScript

时间:2016-06-28 17:29:12

标签: javascript html css

我正在编写一个简单的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'子句中的样式赋值中时,它不行。

我一定是想做一些非常愚蠢的事情。任何人都可以解释一下。

1 个答案:

答案 0 :(得分:2)

如果编写var borderStyle = theCell.style.border;等代码,Javascript不会创建对象的引用。这里仅将border的值的副本分配给borderStyle。 theCell的物体在其位置上没有受到伤害。没有创建参考。