我应该在JavaScript的短块/函数中定义变量吗?

时间:2014-03-07 11:38:36

标签: javascript html

我知道当你有一个大块时,定义变量是有用的。但是在短块/函数中,变量只使用一次,似乎只是浪费字节。这是一个example。这样做不是更好:

function SelectInput() {
            document.getElementById("input").select();

而不是:

 function SelectInput () {
            var input = document.getElementById ("input");
            input.select ();
        }

2 个答案:

答案 0 :(得分:3)

只要存在多次不必要地评估的表达式,就应该使用变量。您还可以使用通过描述性命名来增加可读性的变量,并将大型链分解为合理的块。

块的大小并不重要。

在你的情况下,变量input非常没用,很明显document.getElementById("input")返回/输入。

答案 1 :(得分:0)

嗯,在这种情况下,正如你所说,这是浪费时间和字节。但是,有一些短块,使用变量可能会有所帮助:

function changeStyle() {
    var style = document.getElementById('image').style; //an extra variable here would help us check whether there is an element with id 'image' or not.
    style.width = 200;
    style.height = 100;
}

即使在三行代码中,定义style也很有用,因为与创建一个简单变量相比,访问DOM的速度很慢。在这里,正如我在注释中所说,你应该创建一个变量来存储getElementById()方法的结果,因为它可以返回null。