JavaScript字符串_动力节点Java学院整理


Posted in Javascript onJune 27, 2017

JavaScript的字符串就是用''或""括起来的字符表示。

如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I,',m,空格,O,K这6个字符。

如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识,比如:

'I\'m \"OK\"!';

表示的字符串内容是:I'm "OK"!

转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\。

ASCII字符可以以\x##形式的十六进制表示,例如:

'\x41'; // 完全等同于 'A'

还可以用\u####表示一个Unicode字符:

'\u4e2d\u6587'; // 完全等同于 '中文'

多行字符串

由于多行字符串用\n写起来比较费事,所以最新的ES6标准新增了一种多行字符串的表示方法,用` ... `表示:

`这是一个

多行

字符串`;

模板字符串

要把多个字符串连接起来,可以用+号连接:

var name = '小明';
var age = 20;
var message = '你好, ' + name + ', 你今年' + age + '岁了!';
alert(message);

如果有很多变量需要连接,用+号就比较麻烦。ES6新增了一种模板字符串,表示方法和上面的多行字符串一样,但是它会自动替换字符串中的变量:

var name = '小明';
var age = 20;
var message = `你好, ${name}, 你今年${age}岁了!`;
alert(message);

操作字符串

字符串常见的操作如下:

var s = 'Hello, world!';
s.length; // 13

要获取字符串某个指定位置的字符,使用类似Array的下标操作,索引号从0开始:

var s = 'Hello, world!';
s[0]; // 'H'
s[6]; // ' '
s[7]; // 'w'
s[12]; // '!'
s[13]; // undefined 超出范围的索引不会报错,但一律返回undefined

需要特别注意的是,字符串是不可变的,如果对字符串的某个索引赋值,不会有任何错误,但是,也没有任何效果:

var s = 'Test';
s[0] = 'X';
alert(s); // s仍然为'Test'

JavaScript为字符串提供了一些常用方法,注意,调用这些方法本身不会改变原有字符串的内容,而是返回一个新字符串:

toUpperCase

toUpperCase()把一个字符串全部变为大写:

var s = 'Hello';
s.toUpperCase(); // 返回'HELLO'

toLowerCase

toLowerCase()把一个字符串全部变为小写:

var s = 'Hello';
var lower = s.toLowerCase(); // 返回'hello'并赋值给变量lower
lower; // 'hello'

indexOf

indexOf()会搜索指定字符串出现的位置:
var s = 'hello, world';
s.indexOf('world'); // 返回7
s.indexOf('World'); // 没有找到指定的子串,返回-1

substring

substring()返回指定索引区间的子串:
var s = 'hello, world'
s.substring(0, 5); // 从索引0开始到5(不包括5),返回'hello'
s.substring(7); // 从索引7开始到结束,返回'world'
Javascript 相关文章推荐
JAVASCRIPT对象及属性
Feb 13 Javascript
jQuery 动画弹出窗体支持多种展现方式
Apr 29 Javascript
JS的框架Polymer中的dom-if和is属性使用说明
Jul 29 Javascript
js禁止浏览器页面后退功能的实例(推荐)
Sep 01 Javascript
Vue2.0中集成UEditor富文本编辑器的方法
Mar 03 Javascript
react 父子组件之间通讯props
Sep 08 Javascript
如何为vuex实现带参数的 getter和state.commit
Jan 04 Javascript
vue中使用百度脑图kityminder-core二次开发的实现
Sep 26 Javascript
vue中根据时间戳判断对应的时间(今天 昨天 前天)
Dec 20 Javascript
解决Vue @submit 提交后不刷新页面问题
Jul 18 Javascript
Jquery Fade用法详解
Nov 06 jQuery
jQuery实现可以扩展的日历
Dec 01 jQuery
JavaScript变量作用域_动力节点Java学院整理
Jun 27 #Javascript
详解微信小程序 登录获取unionid
Jun 27 #Javascript
JavaScript定义函数_动力节点Java学院整理
Jun 27 #Javascript
详解vue项目构建与实战
Jun 27 #Javascript
微信小程序 蓝牙的实现实例代码
Jun 27 #Javascript
微信小程序 开发MAP(地图)实例详解
Jun 27 #Javascript
微信小程序商品到详情的实现
Jun 27 #Javascript
You might like
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
prototype 学习笔记整理
2009/07/17 Javascript
Mootools 1.2教程 设置和获取样式表属性
2009/09/15 Javascript
js 实现复制到粘贴板的功能代码
2010/05/13 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
jQuery封装的获取Url中的Get参数示例
2013/11/26 Javascript
JavaScript中的Web worker多线程API研究
2014/12/06 Javascript
微信企业号开发之微信考勤百度地图定位
2015/09/11 Javascript
JQuery实现的按钮倒计时效果
2015/12/23 Javascript
延时加载JavaScript代码提高速度
2015/12/27 Javascript
this,this,再次讨论javascript中的this,超全面(经典)
2016/01/05 Javascript
JS实现保留n位小数的四舍五入问题示例
2016/08/03 Javascript
微信小程序 教程之小程序配置
2016/10/17 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
图解NodeJS实现登录注册功能
2019/09/16 NodeJs
如何通过JS实现转码与解码
2020/02/21 Javascript
vue移动端的左右滑动事件详解
2020/06/17 Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
2020/07/31 Javascript
python求素数示例分享
2014/02/16 Python
cmd运行python文件时对结果进行保存的方法
2018/05/16 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
eclipse创建python项目步骤详解
2019/05/10 Python
python变量的存储原理详解
2019/07/10 Python
印度网上药店:1mg
2017/10/13 全球购物
名人珠宝设计师:Melinda Maria Jewelry
2019/03/06 全球购物
JMS中Topic和Queue有什么区别
2013/05/15 面试题
机电一体化专业推荐信
2013/12/03 职场文书
优秀求职自荐信怎样写
2013/12/18 职场文书
庆七一活动方案
2014/01/25 职场文书
幼儿园中班教师寄语
2014/04/03 职场文书
4S店售后客服自我评价
2014/04/09 职场文书
未受刑事制裁公证证明
2014/09/20 职场文书
师德先进个人事迹材料
2014/12/19 职场文书
生产现场禁烟通知
2015/04/23 职场文书
SQLServer之常用函数总结详解
2021/08/30 SQL Server
实操Python爬取觅知网素材图片示例
2021/11/27 Python