js字符串方法预览:

fromCharCode(num1, num2,,,),

charAt(),

charCodeAt(),

length,

split(''),

slice(start, end?)

substring(start, end?)

trim()

concat()

toLowerCase()

toUpperCase()

indexOf(str, index?)

lastIndexOf(str, index?)

search(regexp)

match(regexp)

replace(search, replacement)

字符字面量与转义

单引号和双引号都可以表示字符字面量,'string is this' "other string is that" 推荐在js中使用单引号,HTML中使用双引号,转义字符以\开始, \n换行符 \f换页符号 \b空格符 \r回车符 \t水平制表符号 \v 垂直制表符号

charCodeAt、charAt 与 fromCharCode

fromCharCode返回由utf-16编码单元组成的字符串,而charCodeAt则返回指定位置的字符的utf-16码, charAt返回制定位置的字符

String.fromCharCode(97, 98, 99) // 'abc'

'abc'.charCodeAt(0) // 97

'abc'.charAt(0) // 'a'

length

字符串的length属性为字符串的长度, '稻草人'.length // 3

split, slice, substring

split(code, limit)将字符串转换为数组以code字符分割,limit为分隔后显示前几项

slice(start, end?)从字符串中截取子字符串,start为开始位置,end为结束位置(不包含)如果没有end参数则到字符串结尾

substring和slice函数一样,参数值可以为负值

  1. 'test'.split('') ;//['t','e','s','t']
  2. 'test'.split('', 2) //['t','e']
  3. 'test'.slice(0,2); //'te'

trim, concat

trim去除字符串两侧的空格,concat把对字符串进行拼接;

  1. ' test '.trim() //'test'
  2. 'hello'.concat(' name',' test') // 'hello name test'

toLowerCase, toUpperCase

toLowerCase 把字符串转换为小写,toUpperCase将字符串转换为大写字母

indexOf, lastIndexOf

indexOf(str, index?) str为索引的字符,index为开始的位置默认为0;

lastIndexOf(str, index?) 和indexOf一样,只是从后向前开始查找

search, match, replace

search(regexp) 返回字符串中第一个与regexp相匹配的子字符串的起始位置,为匹配则返回-1;match(regexp) 将regexp与字符串匹配,若未设置 全局匹配标志则返回第一次匹配的相关信息,若设置了全局匹配标志则返回所有匹配的子字符串;replace(str or regexp, 'replacestring'),将字符串中第一个str字符替换,或将匹配正则的字符替换,正则表达式中若设置全局标志则把所有匹配的字符全部替换,若未设置则只替换第一个匹配的字符,替换的目标字符中可以使用$符号进行完全匹配或捕获分组

  1. '-yy-xxx-y-'.search(/x+/) // 4,不使用正则表达式时和indexOf函数一样
  2. '-abb--aaab-'.match(/(a+)b/) // [ 'ab', 'a', index: 1, input: '-abb--aaab-' ]
  3. '-abb--aaab-'.match(/(a+)b/g) //[ 'ab', 'aaab' ]
  4. var str = 'iixxxixx';
  5. log(str.replace('i', 'o') ) // oixxxixx
  6. log(str.replace(/i/, 'o') ) // oixxxixx
  7. log(str.replace(/i/g, 'o') ) // ooxxxoxx
  8. log(str.replace(/i+/g, '[$&]') ) // [ii]xxx[i]xx
  9. log(str.replace(/(i+)/g, '[$1]') ) //[ii]xxx[i]xx
  10. //replace 使用函数
  11. var str = 'axbbyyxaa';
  12. function log(){
  13. console.log.apply(null, arguments);
  14. }
  15. function repl(all){
  16. return all.toUpperCase();
  17. }
  18. log(str.replace(/a+|b+/g, repl)); //AxBByyxAA

js字符操作的更多相关文章

  1. js字符串操作

    javascript中字符串常用操作总结.JS字符串操作大全 String对象属性 (1) length属性 length算是字符串中非常常用的一个属性了,它的功能是获取字符串的长度.当然需要注意的是 ...

  2. Node.js之操作文件系统(二)

    Node.js之操作文件系统(二) 1.创建与读取目录 1.1 创建目录 在fs模块中,可以使用mkdir方法创建目录,该方法的使用方法如下: fs.mkdir(path,[mode],callbca ...

  3. 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作

    页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...

  4. 在Node.js中操作文件系统(一)

    在Node.js中操作文件系统 在Node.js中,使用fs模块来实现所有有关文件及目录的创建,写入及删除操作.在fs模块中,所有对文件及目录的操作都可以使用同步与异步这两种方法.比如在执行读文件操作 ...

  5. js 字符串操作函数有哪些

    js 字符串操作函数有哪些 一.总结 一句话总结:js字符串函数都是字符串对象的方法,是通过调用字符串方法的方式调用,和java,php里面不一样. 1.字符串替换函数怎么用? 这里的正则表示是加双引 ...

  6. dedecms功能性函数封装(XSS过滤、编码、浏览器XSS hack、字符操作函数)

    dedecms虽然有诸多漏洞,但不可否认确实是一个很不错的内容管理系统(cms),其他也不乏很多功能实用性的函数,以下就部分列举,持续更新,不作过多说明.使用时需部分修改,你懂的 1.XSS过滤. f ...

  7. js简单操作Cookie

    贴一段js简单操作Cookie的代码: //获取指定名称的cookie的值 function getCookie(objName) { var arrStr = document.cookie.spl ...

  8. 使用HTML5的JS选择器操作页面中的元素

    文件命名为:querySelector.html,可在Chrome浏览器中预览效果. 1 <!DOCTYPE html> 2 <html lang="en"> ...

  9. C#——字符操作

    题目要求:用户随机输入字母及数字组成的字符串,当用户连续输入字符串‘hello’时,程序结束用户输入,并分别显示用户输入的字母及数字的数目. 代码: using System; using Syste ...

随机推荐

  1. 死磕Java之聊聊ThreadLocal源码(基于JDK1.8)

    记得在一次面试中被问到ThreadLocal,答得马马虎虎,所以打算研究一下ThreadLocal的源码 面试官 : 用过ThreadLocal吗? 楼主答 : 用过,当时使用ThreadLocal的 ...

  2. [Violet]樱花

    题目链接 洛谷 狗粮版 前置技能 初中基础的因式分解 线性筛 \(O(nlog)\)的分解质因数 唯一分解定理 题解 首先来分解一下式子 \[\frac{1}{x}+\frac{1}{y}=\frac ...

  3. 使用memcache 存储session

    session.save_handler = memcache //设置session的储存方式为memcache memcache.hash_strategy = "consistent& ...

  4. day02.2-列表内置方法

    列表——list的定义:test = [1,12,9,"age",["zizai","jiapu"],"alex"] 特 ...

  5. loj#6041. 「雅礼集训 2017 Day7」事情的相似度(后缀自动机+启发式合并)

    题面 传送门 题解 为什么成天有人想搞些大新闻 这里写的是\(yyb\)巨巨说的启发式合并的做法(虽然\(LCT\)的做法不知道比它快到哪里去了--) 建出\(SAM\),那么两个前缀的最长公共后缀就 ...

  6. 洛谷P2287 [HNOI2004]最佳包裹(三维凸包)

    题面 传送门 题解 左转板子,调个精度就能\(A\)了 //minamoto #include<bits/stdc++.h> #define R register #define fp(i ...

  7. postgreSQL PL/SQL编程学习笔记(三)——游标(Cursors)

    Cursors Rather than executing a whole query at once, it is possible to set up a cursor that encapsul ...

  8. json、xml

    json:(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然 ...

  9. debug启动项目很慢

    用debug启动项目比正常启动慢,从网上找到的是这样说的.删除所有的断点就可以了. 这个问题可能是由于eclipse和tomcat的交互而产生的,在以debug模式启动tomcat时,发生了读取文件错 ...

  10. HDU6333 莫队+组合数

    题目大意: 给定n m 在n个数中最多选择m个的所有方案 #include <bits/stdc++.h> using namespace std; #define INF 0x3f3f3 ...