如何标题Javascript中的句子

时间:2018-04-03 05:57:23

标签: javascript html arrays indexing element



<html>
<head>
	<!--Wei Wu Section A-->
	<title>This is the 4th extra credit</title>
</head>
<body>
	<script type="text/javascript">
	function toUpper(stringFromUser){
		var arrayOfStrings = [];
			arrayOfStrings = stringFromUser.split(" ");
			for(i=0;i<arrayOfStrings.length;i++){
				//if (char(arrayOfStrings[i][0]) <= 122 && char(arrayOfStrings[i][0]) >= 97){
				  if (arrayOfStrings[i].charCodeAt(0) <=122 && arrayOfStrings[i].charCodeAt(0) >=97){	
					arrayOfStrings[i] = arrayOfStrings[i].charAt(0).toUpperCase() + arrayOfStrings[i].slice(1);
				}
			}
		var afterTitle = "";
		afterTitle = arrayOfStrings.join(" ");
			document.getElementById('afterChange').innerHTML = afterTitle;
		}

	</script>
	<p>Enter a sentence and I will turn it into Title Case!<input id="textInput" value=""></p>
	<button onclick="toUpper(textInput.value)">Change case!</button>
	<p id="afterChange"></p>
</body>
</html>
&#13;
&#13;
&#13;

您好,先谢谢您的帮助。这是我正在研究的代码之一。这段代码的目的是&#34;标题案例&#34;句子中每个单词的第一个字母。一些工作后我的代码运行得很好。

但我有一个问题:在第14行,我试图将大写字母指定给arrayOfString [i] [0],但它没有用。相反,我改变了整个元素,AKA是数组中的元素。为什么没有这个工作?非常感谢你!

2 个答案:

答案 0 :(得分:1)

字符串是不可变的 - 您无法通过分配其[]指标来更改其中的单个字符。所以,你必须将它们分开并将它们重新组合在一起,就像你一样。

答案 1 :(得分:0)

您可以将此代码用于标题案例

&#13;
&#13;
 services.AddSingleton<IPublicHub, PublicHubCore>();
&#13;
&#13;
&#13;