JavaScript 字符串练习题

真正的掌握知识需要不断的练习。下面列了些练习题。希望对大家有所帮助。

如果对字符串的 API 不是很熟悉,可查阅 W3School JavaScript String API

** 题 1:首字母改大写 ** 编写函数 firstLetterToUpperCase,满足

firstLetterToUpperCase('hello'); // 输出 'Hello'
firstLetterToUpperCase('World'); // 输出 'World'
firstLetterToUpperCase(345); // 输出 345

** 题 2:去字符串头尾空格 ** 编写函数 trim,满足

trim(' abc   ');  // 输出 'abc'
trim(' a bc   ');  // 输出 'a bc'

** 题 3:将字符串中 _ 后面的小写字母变大写,并且删除 _ ** 编写函数 toCamelStyle,满足

toCamelStyle('abc_bcd');  // 输出 'abcBcd'
toCamelStyle('a_3_c_d_ef');  // 输出 'a3CDEf'
toCamelStyle('_a_b_c_d_ef');  // 输出 '_aBCDEf'

** 题 4:删除字符串中所有的数字 ** 编写函数 removeNum,满足

removeNum('a23b434c45');  // 输出 'abc'
removeNum('343abd8c');  // 输出 'abdc'

** 题 5: 反转字符串 ** 编写函数 reverse,满足

reverse('abcd'); // 输出 'dbca'
reverse('a'); // 输出 'a'

** 题 6: 统计字符串中各字符在字符串中出现的数量 ** 编写函数 caculateExistNum,满足

caculateExistNum('abcd'); // 输出 {a:1,b:1,c:1,d:1}
caculateExistNum('aaabbc00'); // 输出 {a:3,b:2,c:1,o:1}
caculateExistNum(''); // 输出 {}

如果想获得更多练习,CodeWars 上有更多有意思的题。

没有思路?可以参考下我的解答


本文遵守创作共享CC BY-NC-SA 4.0协议 网络平台如需转载必须与本人联系确认。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏蜕变

Python 数据类型

Python主要数据类型包括list(列表)、tuple(元组)、dict(字典)和set(集合)等对象,下面逐一介绍这些Python数据类型。

9000
来自专栏JetpropelledSnake

Python入门之迭代器/生成器/yield的表达方式/面向过程编程

 本章内容     迭代器     面向过程编程       一、什么是迭代       二、什么是迭代器       三、迭代器演示和举例       四、生...

30690
来自专栏大闲人柴毛毛

稳扎稳打JavaScript(一)——作用域链内存模型

几个概念 在开始之前,先了解几个概念。 1.1. 作用域 作用域是指当前正在执行的代码能够访问到变量的范围; 每个函数都有各自的作用域,存储函数所有的局部变量...

48380
来自专栏python3

python字符串

1.    S.find(substr,[start,[end]])    返回S中出现substr的第一个字母的标号,如果S中没有substr则返回-1,st...

10520
来自专栏Golang语言社区

[基础篇]Go语言变量

变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。 Go 语言变量名由字母、数字、下划线组成,其中首个字母不能为数字。 声...

38870
来自专栏marsggbo

C++学习笔记之模板篇

一、模板 不管是函数模板还是类模板,在未初始化前都是不占用内存的。 另外一般来说模板代码不能分开编译,即不能分开写成.h文件和.c文件,需要写成一个文件。 ...

22180
来自专栏全沾开发(huā)

搞懂JavaScript中的连续赋值

搞懂JavaScript中的连续赋值 前段时间老是被一道题刷屏,一个关于连续赋值的坑。 遂留下一个笔记,以后再碰到有人问这个题,直接...

41260
来自专栏鸿的学习笔记

Python和Scala里的控制流程

在前一篇函数定义中,提到了控制流程,那么就先来看看Python和Scala里的控制流程吧。我们知道在编程语言中最常见的控制流程就是while,if,for,就分...

7420
来自专栏Python

Python中赋值、浅拷贝与深拷贝

   python中关于对象复制有三种类型的使用方式,赋值、浅拷贝与深拷贝。他们既有区别又有联系,刚好最近碰到这一类的问题,研究下。 一、赋值         ...

23990
来自专栏WD学习记录

数据结构与算法2016-06-03

一个算法调用自己来完成它的部分工作,在解决某些问题时,一个算法需要调用自身。如果一个算法直接调用自己或间接调用自己,就称这个算法是递归的。根据调用方式的不同,它...

8520

扫码关注云+社区

领取腾讯云代金券