我想創建一個函數,當我打電話給它,我可以給一個性別,它會返回給我一個隨機的名字。問題是我希望它是可重用的,這是我遇到困難的地方。試圖使可重用的javascript功能,但數據不返回
var Name = '';
var Gender = '';
var NameChild1(){
var Child1Gender = 'Male'
Child1Name = NameFunction(Child1Gender, Child1Name)
}
function NameFunction(Gender, Name) {
var NameChance1 = Math.floor(Math.random() * 10) + 1;
NameChance1 = NameChance1.toString();
d3.csv('Names.csv', function(NameData) {
var NameFilter = NameData.filter(function(d) {
return (d.Rank == NameChance1)
})
if (Gender == 'Female') {
Name = NameFilter[0]['NameFemale'];
return (Name);
} else if (Gender == 'Male') {
return (Name);
};
});
};
名稱過濾器在if語句中工作,如果我在它們內部執行console.log - 但它不會回過頭來。
有誰知道問題是什麼?
此外,這是CSV,如果有幫助!
Rank,NameMale,NameFemale
1,Oliver ,Amelia
2,Jack ,Olivia
3,Harry ,Emily
4,George ,Isla
5,Jacob ,Ava
6,Charlie ,Ella
7,Noah ,Jessica
8,William ,Isabella
9,Thomas ,Mia
10,Oscar ,Poppy
工作很好,謝謝!我必須重複使用名稱函數幾次 - 當我調用loadMyCSV()時,是否有任何方法可以使{NameChild1(NameData);}行成爲行;所以我可以寫loadMyCSV(NameChild1);或者其他的東西? – Jess
不清楚你想達到什麼...你能解釋一下嗎 – Cyril