-1

我有一个字符串数组,

["item1", "item2"] 

我想将我的数组更改为

["showItem1", "showItem2"]
4

4 回答 4

3

完全按照您的要求做的最容易理解的方法可能是这样的:

var items = ["item1", "item2"];

​for (var i=0;i<items.length;i+=1) {
   items[i] = "show" + items[i].charAt(0).toUpperCase() + items[i].substring(1);
}

console.log(items); // prints ["showItem1", "showItem2"] 

解释:构建一个新字符串,由字符串“show”+转换为大写的第一个字符+字符串的其余部分(第一个字符之后的所有内容,索引为0)组成

于 2012-09-05T07:01:50.153 回答
1

字符串类似于数组。你可以这样做:

var arr = ['item1', 'item2'];
for (var i=0, l=arr.length; i<l; i++) {
  var letters = arr[i].split('');
  arr[i] = 'show' + letters.shift().toUpperCase() + letters.join('');
}

演示:http: //jsbin.com/asivec/1/edit

于 2012-09-05T07:01:37.937 回答
1
arr.map(function(i) {
  return 'show' + i.charAt(0).toUpperCase() + i.slice(1);
});

Chrome、Firefox、IE9 等支持https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map 。

于 2014-04-28T10:50:27.287 回答
0

这是firstCharLowerToUpper()我为该任务编写的可重用函数。

现场演示

<!DOCTYPE html>
<html>
  <head>
    <style>
      span{
        color:red;
      }
    </style>
  </head>
  <body>
    <div>this is the text: 
      <span id="spn">
        javascript can be very fun
      </span>
    </div>
    <br/>
    <input type="button" value="Click Here" onClick="change()"/>
    <script> 
      function firstCharLowerToUpper(x)
      {
        var ar = x;
        for (var i = 0; i < ar.length; i++)
        {
          ar[i] = ar[i].charAt(0).toUpperCase() + ar[i].substr(1);
        }
        // join to string just to show the result
        return ar.join('\n');
      }
      function change()
      {
        var ar =  ["javascript ", "can ","be ","very ","fun" ];
        var newtxt = firstCharLowerToUpper(ar);
        document.getElementById("spn").innerHTML = newtxt;
      }
    </script>
  </body>
</html>
于 2019-02-09T04:17:37.143 回答