from 廖雪峰js教程

请把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:['adam', 'LISA', 'barT'],输出:['Adam', 'Lisa', 'Bart']

// 测试:
if (normalize(['adam', 'LISA', 'barT']).toString() === ['Adam', 'Lisa', 'Bart'].toString()) {console.log('测试通过!');
}
else {console.log('测试失败!');
}

法一:单用map和用好toCase()系列转化

'use strict'
function normalize(arr)
{return arr.map(function(s){s=s.toLowerCase();var temp=[...s];//这里注意一下,不可以s[0]=s[0].toUpperCase(),对于这个函数不可以操作字符串中的个体,需要先转化为字符数组temp[0]=temp[0].toUpperCase();return s=temp.join("");//map函数体内记得加return哦,不然函数执行后释放就啥都没了。});
}

法二:直接用子字符串处理拼接

'use strict'
function normalize(arr)
{return arr.map(function(s){return s.slice(0,1).toUpperCase()+s.substring(1).toLowerCase();})
}

更简短有力,为啥我要用slice和substring两边呢,这道题用这两个函数都是可以的哈哈,所以这么写一下,接下来贴下区别

stringObj.slice(start, [end])如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。如果省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。如果 end 出现在 start 之前,不复制任何元素到新数组中。

strVariable.substring(start, end)如果 start 或 end 为 NaN 或者负数,那么将其替换为0。子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。

slice可以对数组操作,substring不行。。。

js小题狂练(2)-用户英文名规范相关推荐

  1. 概率论与数理统计期末小题狂练 11-12两套,12-13-1

    11-12第一学期A 1 略. 2 X服从正态分布N(0,1),X^2服从卡方分布.又考查了卡方分布均值和方差公式.一开始如果对本题无从下手,大概是没看出来是什么分布. 3 第二小空本身也可以作为一个 ...

  2. html+css+js之20个练手小项目(一)

    html+css+js之20个练手小项目(一)--Hangman 前言 一.HTML 二.CSS 三.JS 前言 前端新手练习,记录不迷失. 主要练习html和CSS布局以及JS. 来源github, ...

  3. Java/java程序设计多态参数:练手小题:父类员工类含有普通员工和经理两个子类,普通员工有work方法,经理有特有属性年终奖,和manage方法现要求在主文件中设计能调用所有类的年薪方法和工作方法

    多态参数:练手小题 1. 前言: 2. 分析需求: 2.1 主类Employee分析 2.1.1 主类Employee代码片段 2.2 子类work普通员工分析 2.2.1 子类work普通员工代码片 ...

  4. 小学生除法检验,10道题,每小题10分,被除数和除数随机产生。被除数是20~200之间的数,除数是2~9之间的一位数。用户输入答案,计算机判卷,做对了加10分,做错了不允许重做,最后输出成绩;

    欢迎加qq群:453398542 学习讨论,会定期分享资料课程,解答问题. 1.         小学生除法检验,10道题,每小题10分,被除数和除数随机产生.被除数是20~200之间的数,除数是2~ ...

  5. 前端面试每日一练小题1

    每日一练小题1 题目 解析 详细解析 1. 逗号表达式 2. 匿名函数 答案 题目 输入如下代码,问输出什么 var x = 20var temp = {x: 40,foo: function () ...

  6. leetcode(js)-每日一练之 矩阵置零 题库编号 73

    leetcode(js)-每日一练之 矩阵置零 1.检查并标记第一行和第一列是否有0 (firstColHasZero和firstRowHasZero) 2.忽略第一行第一列,若其余行列含有0,将其所 ...

  7. 小程序中神秘的用户数据

    前面 上一篇文章手把手教会你小程序登录鉴权介绍了小程序如何进行登录鉴权,那么一般小程序的用户标识可以使用上文所述微信提供的jscode2session接口来换取,小程序还提供了一个getUserInf ...

  8. JS小案例总结(JS基础案例)

    JS小案例总结 JS小案例总结 案例一:JS实现tab选项卡功能 案例二:JS实现盒子拖拽功能 案例三:JS实现导航条吸顶效果 案例四:JS实现图片懒加载结构 案例五:JS实现简易弹幕功能 案例六:J ...

  9. React.js 小书 Lesson14 - 实战分析:评论功能(一)

    React.js 小书 Lesson14 - 实战分析:评论功能(一) 本文作者:胡子大哈 本文原文:http://react.huziketang.com/blog/lesson14 转载请注明出处 ...

最新文章

  1. tornado源码分析
  2. 周志华教授公布IJCAI 2021投稿量:4204篇,相比去年下降10%!
  3. 车模换几代了,电池什么时候换?
  4. codeforces#597 C. Constanze's Machine(简单dp)
  5. Vue+Openlayers显示TileWMS时不显示默认控件放大缩小旋转等组件
  6. 11.2.5 属性
  7. 工厂模式-CaffeNet训练
  8. 菜鸟:春节保障300城照常收货 3亿补贴直接发给一线员工
  9. Maven学习总结(36)——Apache Maven 3.5.0抢鲜看
  10. 以人为尊真我生活,Leave the world behind
  11. protocol buffer的使用
  12. 【接口测试用例设计思路】
  13. mysql 获取两个月前的日期
  14. 【PC工具】chrome谷歌浏览器最新离线安装版各种版本,最好用的浏览器没有之一...
  15. 教你几招网盘不限速的方法
  16. 语义解析Parser用户手册
  17. 扫雷代码java_JAVA实现扫雷游戏
  18. 2023年天津医科大学药学考研考情与难度、参考书及上岸前辈经验
  19. 牧牛图-南怀瑾上师讲解
  20. UltraEdit 下载|UltraEdit破解版下载|UltraEdit 注册码

热门文章

  1. 【云和恩墨业务介绍】之 SQL 审核服务
  2. 7-13 愿天下有情人都是失散多年的兄妹 (25 分)
  3. win10 UWP 你写我读
  4. uniapp开发:uniapp之vue3.2开发页面传值的解决方案
  5. VC6.0实现网络编程弹出一个消息框
  6. 能帮我看看那里错了吗
  7. 印象笔记Evernote、有道云笔记、为知笔记、麦库笔记数据迁移对比
  8. 宅男福利!爬虫实战,爬取原神真人c图片并保存,谁的老婆快抱走
  9. python 处理 Excel 表格
  10. 颜色的前世今生3·色彩体系