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 相关文章推荐
基于jQuery的动态表格插件
Mar 28 Javascript
js中的string.format函数代码
Aug 11 Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
Jun 17 Javascript
indexOf 和 lastIndexOf 使用示例介绍
Sep 02 Javascript
node.js中的http.get方法使用说明
Dec 14 Javascript
javascript实现简单的贪吃蛇游戏
Mar 31 Javascript
基于javascript实现单选及多选的向右和向左移动实例
Jul 25 Javascript
Vue监听数组变化源码解析
Mar 09 Javascript
实现微信小程序的wxml文件和wxss文件在webstrom的支持
Jun 12 Javascript
基于Bootstrap分页的实例讲解(必看篇)
Jul 04 Javascript
Vue如何循环提取对象数组中的值
Nov 18 Vue.js
微信小程序实现音乐播放页面布局
Dec 11 Javascript
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
PHP中usort在值相同时改变原始位置问题的解决方法
2011/11/27 PHP
php array的学习笔记
2012/05/16 PHP
php数组一对一替换实现代码
2012/08/31 PHP
php数组随机排序实现方法
2015/06/13 PHP
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
2015/11/15 PHP
JavaScript高级程序设计 扩展--关于动态原型
2010/11/09 Javascript
jQuery源码分析-03构造jQuery对象-工具函数
2011/11/14 Javascript
fmt:formatDate的输出格式详解
2014/01/09 Javascript
jquery css 设置table的奇偶行背景色示例
2014/06/03 Javascript
JavaScript实现将数组中所有元素连接成一个字符串的方法
2015/04/06 Javascript
swtich/if...else的替代语句
2015/08/16 Javascript
实例讲解jquery与json的结合
2016/01/07 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
layui结合form,table的全选、反选v1.0示例讲解
2018/08/15 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
react 中父组件与子组件双向绑定问题
2019/05/20 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
Vue数组响应式操作及高阶函数使用代码详解
2020/08/01 Javascript
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
Python+OpenCV人脸检测原理及示例详解
2020/10/19 Python
Flask框架使用DBUtils模块连接数据库操作示例
2018/07/20 Python
python使用Matplotlib画条形图
2020/03/25 Python
django模板加载静态文件的方法步骤
2019/03/01 Python
python 判断三个数字中的最大值实例代码
2019/07/24 Python
python动态视频下载器的实现方法
2019/09/16 Python
python中的插入排序的简单用法
2021/01/19 Python
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
div或img图片高度随宽度自适应的方法
2020/02/06 HTML / CSS
销售主管的自我评价分享
2014/01/03 职场文书
公交公司毕业生求职信
2014/02/15 职场文书
上课打牌的检讨书
2014/02/15 职场文书
公司财务流程之主管工作流程
2014/03/03 职场文书
社区矫正工作方案
2014/06/04 职场文书
档案工作汇报材料
2014/08/21 职场文书
2014党员学习兰辉先进事迹思想汇报
2014/09/17 职场文书
党员批评与自我批评发言稿
2014/10/14 职场文书