0

0

关于JS中字符串的代码实例和解释

php是最好的语言

php是最好的语言

发布时间:2018-08-06 15:26:57

|

2440人浏览过

|

来源于php中文网

原创

js中字符串的基础用法,以案例的形式总结给大家,我想这样的解释应该更清晰明了吧。es6的方法没有特意去标注。我觉得相对重要一些都标注了,特别生僻的我就没加进来。主要以mdn文档为主,示例和解释全都在代码里了。

/**
 * STring API模块回顾
 * MDN文档为主
 * String具有两个属性
 * String.prototype
 * String.length
 */
let str = 'etfdemostring'//测试string
/**
 * ⭐⭐⭐⭐⭐
 * charAt(index)  index是数字
 * 从一个字符串中返回指定得字符
 * @return 特定字符
 */
let c_str = str.charAt(1)
console.log(c_str)

/**
 * ⭐⭐⭐
 * concat(str1,str2) 用于连接字符串形成一个新的字符串返回不影响源字符串
 * @return 返回新的字符串不影响之前字符串
 */
let old = 'woshi '
let newStr = old.concat(str)
console.log(newStr)

/**
 * ⭐⭐⭐
 * endsWith(searchString [, position])方法用来判断当前字符串是否是以另外一个给定的子字符串“结尾”的,
 * startsWith(searchString [, position]) 方法用来判断当前字符串是否是以另外一个给定的子字符串“开头”的,position开始位置
 * 根据判断结果返回 true 或 false。  searchString是要搜索得字符串 position是结束位置  默认是str.length
 * @return true/fasle
 */
let s_str = "To be, or not to be, that is the question"

console.log(s_str.endsWith('question'))

/**
 * ⭐⭐⭐  es6方法
 * includes(searchString [, position]) 方法用于判断一个字符串是否包含在另一个字符串中,
 * 根据情况返回true或false。 用法和endsWith类似 可选。position:从当前字符串的哪个索引位置开始搜寻子字符串;默认值为0。
 * @return true/fasle
 */
console.log(s_str.includes('question',0))

/**
 * ⭐⭐⭐⭐⭐
 * indexOf(searchValue[, fromIndex])
 * 获取string中第一次出现得指定值得索引  注意是指定值 找到返回值 未找到返回-1
 * 注意:区分大小写 ,可以用来检测字符串是否存在
 * @return number/-1
 */
console.log(s_str.indexOf('yes'))

/**
 * ⭐⭐⭐
 * lastIndexOf(searchValue[, fromIndex])
 * 返回指定值在调用该方法得字符串中得最后出现的位置 没找到返回-1
 * fromIndex默认是str.length
 * @return number/-1
 */
console.log(s_str.lastIndexOf('1'))

/**
 * ⭐
 * link() 方法创建一个  HTML 元素,用该字符串作为超链接的显示文本,参数作为指向另一个 URL 的超链接。
 * 这个几乎是没有什么用处
 * @return html
 */
var hotText = "MDN";
var URL = "https://developer.mozilla.org/";

document.write("Click to return to " + hotText.link(URL));

/**
 *⭐⭐⭐
  match(regexp) 当一个字符串与一个正则表达式匹配时, match()方法检索匹配项。
  如果匹配成功返回数组,匹配失败返回null
 */
let m_str =  'For more information, see Chapter 3.4.5.1';
let re = /see (chapter \d+(\.\d)*)/i;
console.log(m_str.match(re))

/**
 * ⭐⭐⭐
 * padEnd(targetLength [, padString])
 * padStart(targetLength [, padString])
 * targetLength:当前字符串需要填充到的目标长度。如果这个数值小于当前字符串的长度,则返回当前字符串本身。
 * 用于从结尾/开始填充字符串到目标长度padString要填充得字符串 如果填充过长则保留左边
 * @returns 新的字符串
 */
console.log('abc'.padEnd(10, "foo"))
console.log('abc'.padStart(10, "foo"))

/**
 * ⭐⭐⭐
 *repeat(count)
 *用于循环当前字符串 count为Number类型  当count小于0 则返回空  cout为循环得次数
 *@return 返回新的字符串
 */
console.log('abc'.repeat(10))

/**
 * ⭐⭐⭐⭐⭐
 * replace(regexp|substr, newSubStr|function) 
 * 方法返回会一个由替换之后替换一些或者所有匹配模式后得字符串(返回新的字符串)
 * 模式可以是一个字符串或者一个正正则表达式,替换之可以是一个字符串或者一个函数
 * @return 返回一个新字符串而且原字符串不会改变!
 * regexp (pattern)
  一个RegExp 对象或者其字面量。该正则所匹配的内容会被第二个参数的返回值替换掉。
  substr (pattern)  原字符串
  一个要被 newSubStr 替换的字符串。其被视为一整个字符串,而不是一个正则表达式。仅仅是第一个匹配会被替换。
  newSubStr (replacement) 需要替换的新字符串
  用于替换掉第一个参数在原字符串中的匹配部分的字符串。该字符串中可以内插一些特殊的变量名。参考下面的使用字符串作为参数。
  function (replacement)
  一个用来创建新子字符串的函数,该函数的返回值将替换掉第一个参数匹配到的结果。参考下面的指定一个函数作为参数。
 */
function replacer(match, p1, p2, p3, offset, string) {
  // p1 is nondigits, p2 digits, and p3 non-alphanumerics
  return [p1, p2, p3].join(' - ');
}
let newString = 'abc12345#$*%'.replace(/([^\d]*)(\d*)([^\w]*)/, replacer);
console.log(newString);  // abc - 12345 - #$*%

/**
 * ⭐
 * search(reg)
 * 用于对字符串进行正则搜索
 * @return number: 返回匹配字符串的索引/-1
 */

 /**
  * ⭐⭐⭐⭐⭐
  * slice(beginSlice,endSlice) 参数负数是倒数位置
  * 提取字符串的一部分并返回一个新的字符串 
  * beginSlice:开始位置
  * endSlice:结束位置 
  * 注意: 在截取的时候包括begin但是不包括end  同样的要头不要尾
  * @return 不会修改原来的字符串 返回一个新的字符串 
  */
 let sliceStr = str.slice(0,7);
 console.log(sliceStr)
 
 /**
  * ⭐⭐⭐⭐⭐
  * split(separator,limit)
  * 将字符串以指定分隔符分割并且返回一个数组
  * separator:分割符
  * limit:限制分割的数量
  * 注意: 不会修改原字符串 如果空字符串("")被用作分隔符,则字符串会在每个字符之间分割。
  * 当字符串为空时,split()返回一个包含一个空字符串的数组,而不是一个空数组,如果字符串和分隔符都是空字符串,则返回一个空数组。
  * @return 返回的是一个新数组
  */
let myString = "Hello World. How are you doing?";
let newSplit  = myString.split(" ", 3);
let strSplit  = myString.split('are');
console.log(newSplit)
console.log("这个是split传一个字符串的用法")
console.log(strSplit)
/**
 * ⭐⭐⭐⭐⭐
 * substr(start[, length]) 
 * 方法返回一个字符串中从指定位置开始到指定字符数的字符。 和slice的区别就是第二个参数的不同
 * substr 从 start 位置开始提取字符,提取 length 个字符(或直到字符串的末尾)。
 * 如果 start 为正值,且大于或等于字符串的长度,则 substr 返回一个空字符串。
 * 如果 length 为 0 或负值,则 substr 返回一个空字符串。如果忽略 length,则 substr 提取字符,直到字符串末尾。
 * start:开始位置
 * length:结束长度
 * @return 修改后的是源字符串
 */
myString.substr(2,3)
console.log(myString)

/**
 * ⭐⭐⭐⭐⭐
 * substring(indexStart,indexEnd)
 * 返回一个字符串在开始索引和结束索引之间的一个子集,或从开始索引到字符串末尾的一个子集  通常配合length属性来使用
 * 注意:和slice不同的是slice返回一个新字符串 和substr不同的是sustr第二个参数是长度 这个是索引
 * 如果 indexStart 等于 indexEnd,substring 返回一个空字符串。
  如果省略 indexEnd,substring 提取字符一直到字符串末尾。
  如果任一参数小于 0 或为 NaN,则被当作 0。
  如果任一参数大于 stringName.length,则被当作 stringName.length。
  // 会自动的调整参数
  如果 indexStart 大于 indexEnd,则 substring 的执行效果就像两个参数调换了一样。例如,str.substring(1, 0) == str.substring(0, 1)。
  @return 修改后的源字符串
  */
let subStringStr = 'asdasd asdhakh'
console.log(subStringStr.substring(3,9));
//这个方法可以用来替换字符串
let replaceBySubstring =  function(old,newS,full){
  for(let i=0;i

总结

有什么错误或者是更好的想法,可以直接修改了 原文地址。
另外数组总结修改中。。。

PHP 网络编程技术与实例(曹衍龙)
PHP 网络编程技术与实例(曹衍龙)

PHP网络编程技术详解由浅入深,全面、系统地介绍了PHP开发技术,并提供了大量实例,供读者实战演练。另外,笔者专门为本书录制了相应的配套教学视频,以帮助读者更好地学习本书内容。这些视频和书中的实例源代码一起收录于配书光盘中。本书共分4篇。第1篇是PHP准备篇,介绍了PHP的优势、开发环境及安装;第2篇是PHP基础篇,介绍了PHP中的常量与变量、运算符与表达式、流程控制以及函数;第3篇是进阶篇,介绍

下载

相关文章:

js截取字符串 PHP在字符串中查找指定字符串并删除的代码

JS字符串处理实例代码

相关专题

更多
php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

65

2025.12.31

php网站源码教程大全
php网站源码教程大全

本专题整合了php网站源码相关教程,阅读专题下面的文章了解更多详细内容。

43

2025.12.31

视频文件格式
视频文件格式

本专题整合了视频文件格式相关内容,阅读专题下面的文章了解更多详细内容。

35

2025.12.31

不受国内限制的浏览器大全
不受国内限制的浏览器大全

想找真正自由、无限制的上网体验?本合集精选2025年最开放、隐私强、访问无阻的浏览器App,涵盖Tor、Brave、Via、X浏览器、Mullvad等高自由度工具。支持自定义搜索引擎、广告拦截、隐身模式及全球网站无障碍访问,部分更具备防追踪、去谷歌化、双内核切换等高级功能。无论日常浏览、隐私保护还是突破地域限制,总有一款适合你!

41

2025.12.31

出现404解决方法大全
出现404解决方法大全

本专题整合了404错误解决方法大全,阅读专题下面的文章了解更多详细内容。

204

2025.12.31

html5怎么播放视频
html5怎么播放视频

想让网页流畅播放视频?本合集详解HTML5视频播放核心方法!涵盖<video>标签基础用法、多格式兼容(MP4/WebM/OGV)、自定义播放控件、响应式适配及常见浏览器兼容问题解决方案。无需插件,纯前端实现高清视频嵌入,助你快速打造现代化网页视频体验。

9

2025.12.31

关闭win10系统自动更新教程大全
关闭win10系统自动更新教程大全

本专题整合了关闭win10系统自动更新教程大全,阅读专题下面的文章了解更多详细内容。

8

2025.12.31

阻止电脑自动安装软件教程
阻止电脑自动安装软件教程

本专题整合了阻止电脑自动安装软件教程,阅读专题下面的文章了解更多详细教程。

3

2025.12.31

html5怎么使用
html5怎么使用

想快速上手HTML5开发?本合集为你整理最实用的HTML5使用指南!涵盖HTML5基础语法、主流框架(如Bootstrap、Vue、React)集成方法,以及无需安装、直接在线编辑运行的平台推荐(如CodePen、JSFiddle)。无论你是新手还是进阶开发者,都能轻松掌握HTML5网页制作、响应式布局与交互功能开发,零配置开启高效前端编程之旅!

2

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
React 教程
React 教程

共58课时 | 3.2万人学习

TypeScript 教程
TypeScript 教程

共19课时 | 1.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号