2014-01-10 50 views
-6
function myFunction() 
{ 
    var x; 
    var txt=""; 
    var person={fname:"John",lname:"Doe",age:25}; 
    for (x in person) 
    { 
    txt=txt + person[x]; 
    } 

    document.getElementById("demo").innerHTML=txt; 
} 

<button onclick="myFunction()">Try it</button> 
<p id="demo"></p> 

不能正常工作,此功能應該顯示每個按鈕被點擊時的對象person的一個屬性(第一「約翰」,然後是「李四」,終於25)。但是,第一次單擊該按鈕時,輸出是JohnDoe25。如何修改這個功能以符合要求?for/in循環中的Java腳本

+4

唔......什麼?這裏有什麼問題?有什麼問題?這是做什麼的?你有沒有看到任何錯誤?你有自己的調試嗎? –

+0

'txt = quotes.join('')'? – elclanrs

+0

感謝WOLF它的確定,但我想以另一種方式,這意味着第一個應該disapper和senond一個來,我再次點擊,然後第二個移動和第三個來這樣我想要的。 – user3124228

回答

1

這是更好地使用陣列,但在你的情況, 呦能做到這樣的:LIVE DEMO

<script> 
var x = 0; 
var txt=""; 
var person={fname:"John",lname:"Doe","age":25}; 
function myFunction(){ 
    if(x==0){ 
     txt = person['fname']; 
    } 
    if(x==1){ 
     txt = person['lname']; 
    } 
    if(x==2){ 
     txt = person['age']; 
    } 
    x++; 
    document.getElementById("demo").innerHTML = txt; 
} 
</script> 

<button onclick="myFunction()">Try it</button> 
<p id="demo"></p>