2015-01-04 49 views
-1

我試圖從一個js文件傳遞4個變量到另一個。JavaScript變量在不同的.js之間傳遞

我讀here,你必須寫:

window.myVar = "foo"; 

,使您的變量 「超級」 - 全球。

在第一個js文件,我有

window.signJoueur1 = string1.charAt(7); 
window.signJoueur2 = string2.charAt(7); 
window.valeurJoueur1 = random1; 
window.valeurJoueur2 = random2; 

在第二js文件,我沒有

console.log(window.signJoueur1); 
console.log(window.signJoueur2); 
console.log(window.valeurJoueur1); 
console.log(window.valeurJoueur2); 

function trouveCombinaison(signJoueur1, signJoueur2, valeurJoueur1, valeurJoueur2) 
{ 
console.log(signJoueur1); 
console.log(signJoueur2); 
console.log(valeurJoueur1); 
console.log(valeurJoueur2); 
} 

它應該工作,但所有的console.log回報'不確定」。

如果你想在這裏更多的信息是完整的代碼:
第一的.js http://pastebin.com/0zJKFNem
第二的.js http://pastebin.com/TsWc7TxL
的HTML http://pastebin.com/t3SzwZSC

所以,我的問題是,我怎麼能真正通過變量?

+0

請不要只爲標題添加'2'來允許發佈您的問題。拿出一個更有意義的標題。 – George 2015-01-04 12:02:07

+0

在troupeCombinaison,它作爲參數傳遞,以便將會在troupeCombinaison的範圍內。在這個變量的值'undefined' – rab 2015-01-04 12:03:04

+0

@George我考慮到了你的請求,謝謝。 – Johnrednex 2015-01-04 12:04:53

回答

2

您正試圖在值存在之前使用它們。

將值賦給變量的代碼在函數內部,並且只有在單擊按鈕之後纔會調用該函數。嘗試顯示值的代碼在頁面加載時執行,因此它在賦予任何值之前使用變量。

0

其實我只是把window.放在第二個console.log組中。

如:

function trouveCombinaison() 
{ 
console.log(window.signJoueur1); 
console.log(window.signJoueur2); 
console.log(window.valeurJoueur1); 
console.log(window.valeurJoueur2); 
} 

的事實的console.log出來的功能不起作用的是,它執行的頁面加載時,由@Guffa解釋。

現在,它的工作。

+0

爲什麼你甚至需要該功能的參數?他們什麼都不做。 – theonlygusti 2015-01-04 12:44:28

+0

不,我真的刪除了他們,我會編輯謝謝。 – Johnrednex 2015-01-04 13:20:23