Javascript字符串以错误的顺序连接
我试图从这三个数组中生成一个角色。我的代码如下所示,但是我不明白为什么字符串没有像我写的那样连接起来。它的某些部分丢失了,甚至在某些时候在开始时就出现了结尾Javascript字符串以错误的顺序连接,javascript,node.js,Javascript,Node.js,我试图从这三个数组中生成一个角色。我的代码如下所示,但是我不明白为什么字符串没有像我写的那样连接起来。它的某些部分丢失了,甚至在某些时候在开始时就出现了结尾。它偶尔会工作,但很多时候输出失败 //Arrays var character = ["man", "woman"]; var feature = ["one leg", "a drinking problem"]; var purpose = ["stay home", "leave home"]; function createSen
。它偶尔会工作,但很多时候输出失败
//Arrays
var character = ["man", "woman"];
var feature = ["one leg", "a drinking problem"];
var purpose = ["stay home", "leave home"];
function createSentence(){
var char = getRandomItem(character);
var feat = getRandomItem(feature);
var purp = getRandomItem(purpose);
var sentence = "A " + char + " with " + feat + ", that wants to " + purp + ".";
return sentence;
}
// Gets a random item from an input array
function getRandomItem(array){
var index = Math.floor(Math.random()*array.length);
return array[index];
}
这是我在控制台里看到的<代码>在开始处,缺少“字符”-部分
.有酗酒问题,想离家出走
编辑:很抱歉没有包括这一点,因为我想这在这里也非常相关。我以为阵列很好,但我可能遗漏了什么。当我在解析完数组后打印出来时,它们看起来和我上面发布的完全一样
// How i set up my arrays
var character = parseTextFile("character.txt");
var feature = parseTextFile("feature.txt");
var purpose = parseTextFile("purpose .txt");
// Parsing a file
function parseTextFile(filename){
var array = fs.readFileSync(filename).toString().split("\n");
return array;
}
/* --- character.txt ---*/
man
woman
谢谢。//我是如何设置阵列的
// How i set up my arrays
var character = parseTextFile("character.txt");
var feature = parseTextFile("feature.txt");
var purpose = parseTextFile("purpose .txt");
// Parsing a file
function parseTextFile(filename){
//fs.read requires absolute path
var array = fs.readFileSync(__dirname + '/' + filename, 'utf8') // <-- specify format
.split('\n')
.filter(function(text) { return !!text; }); // <-- return only not-empty string
return array;
}
var character=parseTextFile(“character.txt”);
var feature=parseTextFile(“feature.txt”);
var-purpose=parseTextFile(“purpose.txt”);
//解析文件
函数parseTextFile(文件名){
//fs.read需要绝对路径
var array=fs.readFileSync(uu dirname+'/'+文件名,'utf8')//我的输入是,char
是一个保留关键字,它会弄乱你的连接,尝试重命名它。它出现了-你能展示你如何实际调用它并显示你的输出吗?@DrakaSAN不,它不是,在Javascript中没有char
。是的,它非常有效fine@JamesThorpe很有意思,我得自己试试令人惊讶的是,我在这里发布的代码似乎也适用于我的计算机。我将在一秒钟内提供更多的源代码。