2011-02-06 17 views
0

我需要對此有更多的理解。在這個例子中,我知道我做錯了什麼,因爲我無法在Windows屏幕上將它拉出來。這只是我擁有的五個變量之一。另一個問題,我必須把javascript.css,或者它可以只是<script>我不明白與js.css不同的用途或只使用<script>謝謝。如何聲明五個變量並聲明每個變量在自己的行上

var stock[0] ="Cisco"; 
var changenet[0] ="0.155 up 0.72%"; 
var lastsale[0] =$21.775; 
document.write("<p><strong>stock[0]<strong>: " + stock[0] +"Cisco" + 
    changenet[0] +" Up"+ lastsale[0] +"to buy is at.<\/p>"); 

OK,我要告訴你什麼,我一直在努力了幾個小時,但仍無法得到它拉了一個網頁上...

<!DOCTYPE html PUBLIC"-//W3C//DTD Xhtml 1.0 Strict//EN" 
"http://www.w3.org.TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
<head> 
<title>Project 4-1</title> 
</head> 
<body> 

    <script type="text/javascript"> 
    <!--HIDE FROM INCOMPATIBLE BROWERS 
    var stock[0] ="Cisco"; 
    var changenet[0] ="0.155 up 0.72%"; 
    var lastsale[0] =$21.775; 
    document.write("<p><strong>stock[0]<strong>: " + stock[0] +"Cisco" + changenet[0] +" Up"+ lastsale[0] +"to buy is at.</p>"); 

    var stock[1] ="Microsoft"; 
    var changenet[1] ="0.085 down 0.78%"; 
    var lastsale[1] =$27.61; 
    document.write("<p><strong>stcok1<strong>: " + stock[1] +"Microsoft" + changenet[1] +" down"+ lastsale[1] +"to buy it at.</p>"); 

    var stock[2] ="intel"; 
    var changenet[1] ="0.085 down 0.78%"; 
    var lastsale[2] =$21.40; 
    document.write("<p><strong>stock2<strong>: " + stock[2] +"Intel" + changenet[2] +" up"+ lastsale[2] +"to buy it at.</p>"); 


    var stock[3] ="NVIDIA"; 
    var changenet[2] ="0.0212 up 0.10%"; 
    var lastsale[3] =$24.908; 
    document.write("<p><strong>stock3<strong>: " + stock[3] +"NVIDIA" + changenet[3] +" down"+ lastsale[3] +"to buy it at.</p>"); 



    var stock[4] ="apple"; 
    var changenet[4] ="4.1301 down 1.20%"; 
    var lastsale[4] =$340.1898; 
    document.write("<p><strong>stock4<strong>: " + stock[4]+"apple" + changenet[4] +" down"+ lastsale[4] +"to buy it at.</p>"); 

    var stock[5] ="EA"; 
    var changenet[5] ="0.4 down 2.60%"; 
    var lastsale[5] =$17.62; 
    document.write("<p><strong>stock5<strong>: " + stock[5] +"EA" + changenet[5] +" down"+ lastsale[5] +"to buy it at.</p>"); 


    //STOP HIDING FROM INCOMPATIBLE BROWERS--> 
    </script> 
</body> 
</html> 
+1

你聲明和定義你的數組變量?就像`var stock = []; var changenet = [];`等等?然後你不需要在你發佈的代碼中使用`var`。只是`股票[0] =「思科」`。 – MatrixFrog 2011-02-06 06:12:25

+0

我有這樣的方式,但我仍然不明白..它仍然令人困惑,所以我需要使用數組。 – norris1023 2011-02-06 06:24:24

+0

看看這個:http://jsfiddle.net/uVQGM/ – Stephen 2011-02-06 07:27:25

回答

2

var stock[0]是怪異,和可能是Javascript語法不正確。因爲你沒有實際使用的變量爲你的榜樣陣列

var stock = [], changenet = [], lastsale = []; 
stock[0] ="Cisco"; 
changenet[0] ="0.155 up 0.72%"; 
lastsale[0] = "$21.775"; // note that the $ needs to be part of a string! 
document.write("<p><strong>stock[0]<strong>: " + stock[0] +"Cisco" + 
changenet[0] +" Up"+ lastsale[0] +"to buy is at.<\/p>"); 

或者更短的解決方案: 要聲明一個數組,請使用:var myArray = new Array();(老式)或var myArray = [];

例如,嘗試

var stock = "Cisco", 
    changenet = "0.155 up 0.72%", 
    lastsale = "$21.775"; // note that the $ needs to be part of a string! 
document.write("<p><strong>stock<strong>: " + stock + "Cisco" + 
changenet +" Up"+ lastsale +"to buy is at.<\/p>"); 

新增我就在你的文件撰寫發言又看了一下,我注意到你包含在您的裁判stock一個字符串文字。它不會那樣工作。所以,你大概的意思:

document.write("<p><strong>" + stock + "<strong>: " + stock + "Cisco" + 
changenet +" Up"+ lastsale +"to buy is at.<\/p>"); 
// Instead of 
document.write("<p><strong>stock<strong>: " + stock + "Cisco" + 
changenet +" Up"+ lastsale +"to buy is at.<\/p>"); 

新增迴應評論:

well i need to declare 5 variables and each has to be on its on line. Then i have to write a statement for each one.

你可以聲明變量,並在同一時間對它們進行初始化。或者你可以先聲明它們,然後再設置它們。當你聲明它們時,你不必重複var語句,因爲var語句可以同時用於多個變量。例如

var stocks = [], // declaring a new array 
    stock = "Cisco", // declaring a simple var (stock) and initializing it 
    changenet; // declaring a simple var without initializing it. 
    // all of the above are part of one var statement. 

// or, the same as the above, but written as multiple statements: 
var stocks = []; // declaring a new array 
var stock = "Cisco"; // declaring a simple var (stock) and initializing it 
var changenet; // declaring a simple var without initializing it. 
// note that the statements end with the ; 

changenet = "0.155 up 0.72%"; // assigning a value to an existing variable 
3

你需要學習更好的語法:Thau's JavaScript Tutorial(注意這是一個有點過時)

你不需要[0]如果股票,changenet和lastsale不是數組。如果它們是數組,那麼只有當您第一次定義數組時才應該放置var。

不使用數組:

var stock = "Cisco", 
    changenet = "0.155 up 0.72%", 
    lastsale = 21.775; //amount in dollars 
document.write("Stock: " + stock + ", Changenet: " + changenet + ", Last Sale: " + lastsale); 

使用數組:

var stock = [], 
    changenet = [], 
    lastsale = []; 
stock[0] = "Cisco"; 
changenet[0] = "0.155 up 0.72%"; 
lastsale[0] = 21.755; 
document.write("Stock: " + stock[0] + ", Changenet: " + changenet[0] + ", Last Sale: " + lastsale[0]); 

如果你打算做計算,我會建議做別的事情的changenet變量,就像使其2個不同的變量,一個用十進制數字,另一個用於perentage。

1

正如你們所說,你可以聲明變量是這樣的:

var stock = "EA", 
    changenet = "0.4 down 2.60%", 
    lastsale = $17.62; 

,但只是要小心,如果不小心你就會結束與一條線「;」,那麼其他變量將被宣佈爲全球:

var stock = "EA", // will be local 
    changenet = "0.4 down 2.60%"; // will be local 
    lastsale = $17.62; // will be global 

一個小技巧來幫助,你可以聲明變量這種方式(這是我最好的一個):

var stock = "EA" 
    , changenet = "0.4 down 2.60%" 
    , lastsale = $17.62; 

現在您至少可以看到您的「逗號」,並且如果一行以';'結尾那麼你得到JS錯誤:

var stock = "EA" 
    , changenet = "0.4 down 2.60%"; 
    , lastsale = $17.62; // Syntax Error 

其他的東西,關於數組/不陣列,並宣佈由其他提到,所以我只是想補充自己的答案