1 | "use strict";
|
2 | function changeCase(str, type) {
|
3 | switch (type) {
|
4 | case 1:
|
5 | return str.replace(/^(\w)(\w+)/, function (v, v1, v2) {
|
6 | return v1.toUpperCase() + v2.toLowerCase();
|
7 | });
|
8 | case 2:
|
9 | return str.replace(/^(\w)(\w+)/, function (v, v1, v2) {
|
10 | return v1.toLowerCase() + v2.toUpperCase();
|
11 | });
|
12 | case 3:
|
13 | return ToggleCase(str);
|
14 | default:
|
15 | return str.replace(/^(\w)(\w+)/, function (v, v1, v2) {
|
16 | return v1.toUpperCase() + v2.toLowerCase();
|
17 | });
|
18 | }
|
19 | }
|
20 | function ToggleCase(str) {
|
21 | var itemText = '';
|
22 | str.split('').forEach(function (value) {
|
23 | if (/^[a-z]/.test(value)) {
|
24 | itemText += value.toUpperCase();
|
25 | }
|
26 | else if (/^[A-Z]/.test(value)) {
|
27 | itemText += value.toLowerCase();
|
28 | }
|
29 | else {
|
30 | itemText += value;
|
31 | }
|
32 | });
|
33 | return itemText;
|
34 | }
|
35 | module.exports = changeCase;
|
36 |
|
\ | No newline at end of file |