这是我在函数中的当前代码。我试图在第一个中创建一个for循环,但是我并不完全确定我是否正确地执行了它,因为我尝试制作的数组返回了一个错误。
我一直在:
未捕获的TypeError:thisWord.split不是函数
我不确定我做错了什么,有人可以帮忙吗?
var thisWord = words
for (q = 0; q < words.length; q++) {
// cast the string to all lowercase
thisWord[q] = words[q].toLowerCase();
}
var thisArray = thisWord.split('');
thisArray.sort();
答案 0 :(得分:0)
如果words
是一个字符串数组,那么你应该这样做:
var words = ["asAAAaad", "SSssbb", "asddASD"];
var newWords = words.map(function(word) {
return word.toLowerCase();
});
console.log(newWords); // ["asaaaaad", "ssssbb", "asddasd"];
newWords.sort();
console.log(newWords); // ["asaaaaad", "asddasd", "ssssbb"];
&#13;
如果单词是间隔字符串
var words = "asAAAaad SSssbb asddASD";
var newWords = words.split(" ");
console.log(newWords); // ["asAAAaad", "SSssbb", "asddASD"]
newWords.sort();
console.log(newWords); // ["SSssbb", "asAAAaad", "asddASD"]
答案 1 :(得分:0)
虽然strings是不可变的,并且您可以将toLowerCase
用于整个字符串,但您可以将toLowerCase
的值分配给另一个或同一个变量。
var words = "Es war einmal ein Prinz, der hatte",
thisWord = words.toLowerCase(),
thisArray = thisWord.split('');
thisArray.sort();
console.log(thisWord);
console.log(thisArray);