JavaScript更改字符串的大小写


Posted in Javascript onMay 07, 2015

JavaScript提供了两个方法,将字符串转换为全部大写或全部小写,从而可以将“hello”更改为“HELLO”,或者将“NOT”更改为“not”。你可能会问,为什么?将字符串中的字母转换为相同的大小写,这可以使得比较两个字符串变得更容易。例如,假设你创建了一个题程序,并且,一个问题是“Who was the first American to win the Tour De France?”你可能用类似下面的代码来检查参加答题者的答案:

var correctAnswer='Greg LeMond';
var response=prompt('Who was the first American to win the Tour De8
France?','');
if(response==correctAnswer){
//correct
}else{
//incorrect
}

答案是Greg LeMond,但是,如果参加答题的人输入了Greg Lemond,结果会如何呢?条件看上去类似这样:'Greg Lemond'=='Greg LeMond'。由于JavaScript是区分大小写字母的,Lemond中的小写字母'm'不会匹配LeMond中的'M',因此,参加答题者可能会得到答错的结果。如果参加答题者按下了Caps键,并且输入了GREG LEMOND,也会得到同样的结果。

要解决这个难题,我们可以将两个字符串都转换为同样的大小写,然后再比较它们:

if(response.toUpperCase()==correctAnswer.toUpperCase()){
//correct
}else{
//incorrect
}

在这个例子中,条件语句将参加答题者的答案和正确的答案都转换为大写字母,因此,'Greg Lemond'变成了'GREG LEMOND',并且'Greg LeMond'变成了'GREG LEMOND'。

要获得全部小写的字符串,像下面这样使用toLowerCase()方法:

var answer='Greg LeMond';
alert(answer.toLowerCase());//'greg lemond'

注意,这些方法都没有真正改变实际存储在变量中的字符串,它们只是以全部大写或全部小写的形式返回了该字符串。因此,在上面的例子中,即便提示出现以后,answer仍然包含'Greg LeMond'(它们返回某些其他的值)。

toLowerCase()和toUpperCase()是两个经典的方法,借鉴自java.lang.String中的同名方法。而toLocaleLowerCase()和toLocaleUpper()方法则是针对特定地区的实现。对有些地区来说,针对地区的方法与通用方法得到的结果相同,但少数语言会为Unicode大小写转换应用特殊的规则,这时候就必须要使用针对地区的方法来保证实现正确的转换。

以下是几个例子:

var sv="hello world";
alert(sv.toLocaleUpperCase());//"HELLO WORLD"
alert(sv.toUpperCase());//"HELLO WORLD"
alert(sv.toLocaleLowerCase());//"hello world"
alert(sv.toLowerCase());//“hello world”

以上代码用的toLocaleUpperCase()和toUpperCase()都返回了“HELLO WORLD”,就像调用了toLocaleLowerCase()和toLowerCase()都返回了“hello world”一样。一般来说,在不知道自己的代码将在那种语言环境下运行的情况下,还是使用针对地区额的方法更稳妥一些。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
静态的动态续篇之来点XML
Aug 15 Javascript
input的focus方法使用
Mar 13 Javascript
腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口
Jul 26 Javascript
图标线性回归斜着移动到指定的位置
Aug 16 Javascript
jquery验证邮箱格式是否正确实例讲解
Nov 16 Javascript
ionic+AngularJs实现获取验证码倒计时按钮
Apr 22 Javascript
Vue SPA单页应用首屏优化实践
Jun 28 Javascript
生产制造追溯系统之在线打印功能
Jun 03 Javascript
node使用request请求的方法
Dec 20 Javascript
Bootstrap简单实用的表单验证插件BootstrapValidator用法实例详解
Mar 29 Javascript
微信小程序开发打开另一个小程序的实现方法
May 17 Javascript
利用js canvas实现五子棋游戏
Oct 11 Javascript
JQUERY简单按钮轮换选中效果实现方法
May 07 #Javascript
JS基于面向对象实现的放烟花效果
May 07 #Javascript
jquery中trigger()无法触发hover事件的解决方法
May 07 #Javascript
javascript实现的图片切割多块效果实例
May 07 #Javascript
javascript中indexOf技术详解
May 07 #Javascript
javascript限制文本框输入值类型的方法
May 07 #Javascript
浅谈Javascript的静态属性和原型属性
May 07 #Javascript
You might like
php数组函数序列之in_array() 查找数组值是否存在
2011/10/29 PHP
浅析SVN常见问题及解决方法
2013/06/21 PHP
编译PHP报错configure error Cannot find libmysqlclient under usr的解决方法
2014/06/27 PHP
使用PHP把HTML生成PDF文件的几个开源项目介绍
2014/11/17 PHP
为你总结一些php系统类函数
2015/10/21 PHP
Symfony2学习笔记之插件格式分析
2016/03/17 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
限制文本框输入N个字符的js代码
2010/05/13 Javascript
jQuery .tmpl(), .template()学习资料小结
2011/07/18 Javascript
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
2012/01/15 Javascript
js事件(Event)知识整理
2012/10/11 Javascript
javascript中对Attr(dom中属性)的操作示例讲解
2013/12/02 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
使用JavaScript判断用户输入的是否为正整数(两种方法)
2017/02/05 Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
2017/04/21 jQuery
详解vue项目的构建,打包,发布全过程
2017/11/23 Javascript
JavaScript事件冒泡与事件捕获实例分析
2018/08/01 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
2018/09/15 Javascript
vue实现搜索过滤效果
2019/05/28 Javascript
[59:08]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第一局
2016/02/27 DOTA
[01:07:34]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第二场 1月9日
2021/03/11 DOTA
使用Django开发简单接口实现文章增删改查
2019/05/09 Python
python实现大文本文件分割
2019/07/22 Python
Python3 利用face_recognition实现人脸识别的方法
2020/03/13 Python
Python requests模块session代码实例
2020/04/14 Python
Win 10下Anaconda虚拟环境的教程
2020/05/18 Python
Python xlwings插入Excel图片的实现方法
2021/02/26 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
2021/03/04 Python
联想印度官方网上商店:Lenovo India
2019/08/24 全球购物
北京SQL新华信咨询
2016/09/30 面试题
《维生素c的故事》教学反思
2014/02/18 职场文书
董事长年会致辞
2015/07/29 职场文书
HTML速写之Emmet语法规则的实现
2021/04/07 HTML / CSS
Anaconda安装pytorch及配置PyCharm 2021环境
2021/06/04 Python