在没有内置字符串函数的情况下将lower更改为大写

时间:2018-04-15 17:00:46

标签: javascript

我已经创建了一个循环来搜索数组中的字符串长度,然后我就会在那之后坚持到下一个去的地方因为其他人的y。

function uppp(string) {
var c = '';

2 个答案:

答案 0 :(得分:0)

这似乎是一个家庭作业问题,所以我只会给你一些提示!

首先,研究ASCII码的概念:
https://www.w3schools.com/charsets/ref_html_ascii.asp

你会注意到character codes for a-z (lowercase) are 97-122 同样,character codes for A-Z (capitalized) are 65-90

高级解决方案

遍历字符串,检查每个字符是否为小写。

  

注意: 'a'.charCodeAt(0) === 97String.fromCharCode('a'.charCodeAt(0) + 1); === 'b'

考虑到这些注意事项,看看您是否可以开发解决方案。

答案 1 :(得分:0)

查看map()join()indexOf()等数组函数。如何将两个数组(小写字母之一和大写字母之一)与这些方法结合起来以产生预期的结果?

var s = 'String is COOL!',
    result = '',
    lower = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'],
    upper = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];

function makeUpper(x) {
  let index = lower.indexOf(x);
  return index > -1 ? upper[index] : x;
}

result = [].map.call(s, makeUpper).join('');

console.log(result);