《JavaScript-The Definitive Guide》读书笔记:字符串常用方法
concat()
连接多个字符串,返回合并后的字符串。
var s1="a";
var s2="b";
var s3="c"; console.log(s1.concat(s2,s3));//abc
concat() 方法的结果等同于:result = s1 + s2 + ... + sN。如果有不是字符串的参数,则它们在连接之前将首先被转换为字符串。
数组中的concat():将参数添加为数组的元素,返回新的数组。
var arr = [1, 2, 3];
console.log(arr.concat(4, 5));//[1,2,3,4,5]
indexOf()
查找子串第一次出现的索引。
var s="abcd";
console.log(s.indexOf("b"));//
若没有匹配项,返回 -1。
var s="abcd";
console.log(s.indexOf("e"));//-1
可以传入第二个参数:fromIndex,表示从索引位置fromIndex开始查找,默认从起始索引0开始查找;若fromIndex为负,则从索引0开始查找。
var s = "aba";
console.log(s.indexOf("a", 0));//
console.log(s.indexOf("a", 1));//
console.log(s.indexOf("a", -1));//
该方法对大小写敏感。
var s="Aba";
console.log(s.indexOf("a"));//
lastIndexOf()
类似 indexOf() ,但从右往左查找。
var s = "aba";
console.log(s.lastIndexOf("a"));//
也可指定起始索引,默认从最大索引开始查找。
var s = "aba";
console.log(s.lastIndexOf("a",1));//
charAt()
返回指定索引位置的字符(因为Javascript中没有字符类型,所以返回的是长度为1的字符串)。
var s="abc";
console.log(s.charAt(1));//b
若索引越界,返回空字符串。
var s="abc";
console.log(s.charAt(-1));//""
substr()
substr(fromIndex,length):从起始索引fromIndex开始截取长度length的字符串。
var s="abc";
console.log(s.substr(1,1));//b
若length < 1,返回空字符串。
var s="abc";
console.log(s.substr(1,-1));//""
若不指定length或者length超过可截取的最大长度,则截取到结尾。
var s="abc";
console.log(s.substr(1));//bc
console.log(s.substr(1,10));//bc
若起始索引为负,则从右往左开始截取(从右往左的索引从-1开始)。
var s="abc";
console.log(s.substr(-1,1));//c
substring()
substring(startIndex,endIndex):截取起始索引startIndex到结束索引endIndex的子字符串,结果包含startIndex处的字符,不包含endIndex处的字符。
var s="abc";
console.log(s.substring(1,2));//b
若startIndex或者endIndex为负,则会被替换为0。
var s="abc";
console.log(s.substring(-1,2));//ab
若startIndex和endIndex相等,则返回空字符串。
若startIndex > endIndex,则执行方法时,两个值会被交换。
var s="abc";
console.log(s.substring(2,1));//b
若不指定endIndex或endIndex超出最大索引,则截取到结尾。
var s="abc";
console.log(s.substring(1));//bc
console.log(s.substring(1,10));//bc
slice()
slice(startIndex,endIndex):截取起始索引startIndex到结束索引endIndex的子字符串,结果包含startIndex处的字符,不包含endIndex处的字符。
var s="abc";
console.log(s.slice(1,2));//b
若startIndex或者endIndex为负,表示该索引是从右往左计算的索引(跟substring不同)。
var s="abc";
console.log(s.slice(1,2));//b
//等价于
console.log(s.slice(1,-1));//b
//等价于
console.log(s.slice(-2,-1));//b
//等价于
console.log(s.slice(-2,2));//b
若startIndex所表示的索引位置等于endIndex所表示的索引位置,或者startIndex所表示的索引位置在endIndex所表示的索引位置之后,则返回空字符串(跟substring不同)。
var s="abc";
console.log(s.slice(1,1));//""
console.log(s.slice(-1,-2));//""
split()
按给定字符串分割,返回分割后的多个字符串组成的字符串数组。
var s="a,bc,d";
console.log(s.split(","));//["a", "bc", "d"] s="a1b1c1d1";
console.log(s.split("1"));//["a", "b", "c", "d", ""]
《JavaScript-The Definitive Guide》读书笔记:字符串常用方法的更多相关文章
- 《javascript权威指南》读书笔记——第二篇
<javascript权威指南>读书笔记——第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字 ...
- 《javascript权威指南》读书笔记——第一篇
<javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...
- 《JavaScript高级程序设计》读书笔记--前言
起因 web编程过程使用javascript时感觉很吃力,效率很低.根本原因在于对javascript整个知识体系不熟,看来需要找些书脑补一下,同时欢迎众网友监督. 大神推荐书籍 看了博客大神们推荐的 ...
- 《javascript权威指南》读书笔记(连载)
这是一篇很长的博客 终于把权威指南给买回来了,之前一直犹豫,第一:书太厚,怕买了不能坚持看完.第二:觉得太贵,最少100¥.现在实习也能发点工资了,给自己定了一个志愿:把一个月的工资用于买书.这么一想 ...
- 《JavaScript权威指南》读书笔记(一)
日期 2015-11-28 把之前的读书笔记在我弄丢它之前搬过来~~ 时间过去好久,回头一看理解都不一样了. 重点浏览了一下和Java的不同之处: js是一种宽松类型语言:js不区别整形数值与浮点型数 ...
- 《Javascript高级程序设计》读书笔记之对象创建
<javascript高级程序设计>读过有两遍了,有些重要内容总是会忘记,写一下读书笔记备忘 创建对象 工厂模式 工厂模式优点:有了封装的概念,解决了创建多个相似对象的问题 缺点:没有解决 ...
- 《JavaScript 高级程序设计》读书笔记
文章目录 第三章 基本语法 第四章 变量.作用域和内存问题 第五章 应用类型 1. Array 类型 2. RegExp 类型 3. Function 类型 4. String 类型 第六章 面向对象 ...
- 《Javascript高级程序设计》读书笔记(1-3章)
第一章 JavaScript简介 1.1 JavaScript简史 略 1.2 JavaScript实现 虽然 JavaScript 和 ECMAScript 通常都被人们用来表达相同的含义,但 Ja ...
- JavaScript语言精粹(读书笔记)
第一章 精华 1,JavaScript的函数(主要)基于词法作用域(lexical scoping)的顶级对象.强类型语言允许编译器在编译时检测错误,但弱类型很自由,无需建立复杂的类层次,不用做强制造 ...
- 你不知道的Javascript(上卷)读书笔记之二 ---- 词法作用域
在前一篇文章中,我们把作用域定义为"管理.维护变量的一套规则",接下来是时候来深入讨论一下Js的作用域问题了,首先我们要知道作用域一般有两种主要的工作类型,一种是词法作用域,一种是 ...
随机推荐
- lnmp环境下piwiki网站流量分析工具的安装及配置
piwiki统计网站的安装 Piwik是一个PHP和MySQL的开放源代码的Web统计软件. 它给你一些关于你的网站的实用统计报告,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等等- Piwi ...
- PL/SQL第四章 where子语句
-- 学习where语句 -- 1.学会where子句中使用常规比较符 -- 常规比较操作符:=,<>(不等于),!=,>=,<=,>,< -- 当区分大小写时,可 ...
- pyspark遇到报错:_PYSPARK_DRIVER_CONN_INFO_PATH
1. 环境 : centos,启动pyspark,执行如下python命令: import pyspark from pyspark import SparkContext from pyspark ...
- vue系列之获取多选框中被选中的值
多个勾选框,绑定到同一个数组: <input type="checkbox" id="jack" value="Jack" v-mod ...
- STM32应用实例六:与MS5837压力传感器的I2C通讯
MS5837压力传感器是一种可用于电路板上,适用于检测10-1200mbar压力范围的传感器,灵敏度非常高,理论上能够检测到0.01mbar的压力变化,实际使用过程中测试并无明显的变化. MS5837 ...
- 前端开发必须知道的JS之闭包及应用
本文讲的是函数闭包,不涉及对象闭包(如用with实现).如果你觉得我说的有偏差,欢迎拍砖,欢迎指教. 在前端开发必须知道的JS之原型和继承一文中说过下面写篇闭包,加之最近越来越发现需要加强我的闭包应用 ...
- CCF2016093炉石传说(C语言版)
问题描述 <炉石传说:魔兽英雄传>(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式卡牌游戏(如下图所示).游戏在一个战斗棋盘上进行 ...
- Laravel 的文件存储 - Storage
记录一下 Laravel Storage 的常见用法 内容写入磁盘文件 > php artisan tinker >>> use Illuminate\Support\Faca ...
- MySQL----数据库操作2
数据库高级操作: SHOW DATABASES; 显示数据库 CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci CR ...
- js有关事件驱动
事件驱动 /* 什么是事件? 1.事件发生了 2.我要对这个事件做对应的处理 ...