这些片段有什么区别?

时间:2010-08-11 09:11:03

标签: javascript

javascript新手,我遇到很多问题。

我在w3cschools.com上阅读了javascript教程, 我头上有许多问号。

我不明白下面有什么区别:

var name=something;

name=something;

以上两个例子也给出了一个名字,为什么有两种不同的方式?

name=new Array();

name[0]=something0;

name[1]=something1;

与switch相同吗?

//切换开始

var name=something();

switch(something)

{

case 1:

do something;

break;

case 2:

do something;

break;

default:

do something;

}

// if ... else start

var name=something();

if (condition) 

{

do something

};

else if (condition)

{

do something

};

else

{

do something

};

switch case和else.if之间有什么不同?

我认为两个人都做同样的事情?匹配条件然后做点什么?

和for循环,循环和中断循环,

两者都在做同样的事情,但有三种不同的方式。

有人可以告诉我他们之间有什么不同吗?这让我感到困惑。

请介绍更多javascript教程。

非常感谢

3 个答案:

答案 0 :(得分:4)

对于您的第一个问题,当您使用“var”时,它会为变量定义局部范围。当您使用没有键作为“var”的变量时,这意味着它们是全局变量。通常使用全局变量不是一个好习惯。

同样在其他IF ELSE部分,你不能在ELSE IF块之前有分号。

检查这些链接 -

阅读JavaScript下的所有文章:http://www.crockford.com/

JavaScript:范围和提升:http://www.adequatelygood.com/2010/2/JavaScript-Scoping-and-Hoisting

JavaScript:函数表达式与函数声明与函数语句:http://yura.thinkweb2.com/named-function-expressions/

答案 1 :(得分:1)

回答你的第一个问题:

var name=something;

name=something;

var name

此代码段创建一个名为name的新变量。它将在代码的其余部分中作为名称引用,它已被声明。

var name = something

这段代码假设在它上面声明了一个名为'something'的变量,它创建了name变量并为它指定了'soemething'在该特定点所拥有的值。

name = something

如果没有初始创建变量,这一行假定变量已经先前已声明,它只是将该变量赋值为值。

<强>读

我建议您阅读此网页似乎有一个很棒的introduction to javascript,并会回答您的更多问题。

答案 2 :(得分:0)

快速轻松地回答您的切换问题。开关通常比重复的其他if块更清晰,更易读 你也可以在你的情况下做正常表达式之类的酷事(case / awesome | radical /:...)。你会在以后欣赏;)