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 相关文章推荐
Ajax::prototype 源码解读
Jan 22 Javascript
JS特殊函数(Function()构造函数、函数直接量)区别介绍
May 19 Javascript
jQuery实现列表内容的动态载入特效
Aug 08 Javascript
理解javascript定时器中的setTimeout与setInterval
Feb 23 Javascript
jQuery使用模式窗口实现在主页面和子页面中互相传值的方法
Mar 01 Javascript
JQuery validate 验证一个单独的表单元素实例
Feb 17 Javascript
node.js中express中间件body-parser的介绍与用法详解
May 23 Javascript
VUE element-ui 写个复用Table组件的示例代码
Nov 18 Javascript
微信小程序实现导航栏选项卡效果
Jun 19 Javascript
详解Nuxt.js Vue服务端渲染摸索
Feb 08 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
May 06 Javascript
mpvue微信小程序的接口请求fly全局拦截代码实例
Nov 13 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 调试利器debug_print_backtrace()
2012/07/23 PHP
JavaScript日历实现代码
2010/09/12 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
JS中typeof与instanceof之间的区别总结
2013/11/14 Javascript
使用Node.js实现一个简单的FastCGI服务器实例
2014/06/09 Javascript
使用jQuery判断IE浏览器版本的代码
2014/06/14 Javascript
js中的getAttribute方法使用示例
2014/08/01 Javascript
Vue.js框架路由使用方法实例详解
2017/08/25 Javascript
JS简单实现父子窗口传值功能示例【未使用iframe框架】
2017/09/20 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
JS实现的缓冲运动效果示例
2018/04/30 Javascript
[04:29]2016国际邀请赛中国区预选赛Ehome战队教练采访
2016/06/27 DOTA
Python运用于数据分析的简单教程
2015/03/27 Python
Python minidom模块用法示例【DOM写入和解析XML】
2019/03/25 Python
numpy下的flatten()函数用法详解
2019/05/27 Python
Python利用全连接神经网络求解MNIST问题详解
2020/01/14 Python
Python使用enumerate获取迭代元素下标
2020/02/03 Python
keras自定义回调函数查看训练的loss和accuracy方式
2020/05/23 Python
python xlsxwriter模块的使用
2020/12/24 Python
完美解决Pycharm中matplotlib画图中文乱码问题
2021/01/11 Python
python中os.remove()用法及注意事项
2021/01/31 Python
10分钟理解CSS3 Grid布局
2018/12/20 HTML / CSS
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
中粮集团旗下食品网上购物网站:我买网
2016/09/22 全球购物
JOSEPH官网:英国奢侈时尚品牌
2018/01/31 全球购物
比利时香水网上商店:NOTINO
2018/03/28 全球购物
中间件分为哪几类
2012/03/14 面试题
汉语言文学毕业生求职信
2013/10/01 职场文书
公司董事长职责
2013/12/12 职场文书
户外活动总结范文
2014/04/30 职场文书
建筑安全生产责任书
2014/07/22 职场文书
介绍长城的导游词
2015/01/30 职场文书
诚信教育主题班会
2015/08/13 职场文书
使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
2021/04/07 HTML / CSS
laravel ajax curd 搜索登录判断功能的实现
2021/04/17 PHP
详解Vue的列表渲染
2021/11/20 Vue.js