javaScript字符串简要概述

字符串定义

1.字符串是javascript的一种数据类型 用" " ' ' 括起来的就是字符串

2.字符串定义

通过直接赋值的形式是基本数据类型

通过new关键词是对象类型(引用数据类型)

var str = 'syt'
//使用new 关键字定义
var strObj = new String(true)//返回的是一个字符串
console.log(strObj);//转true为字符串 存入对应的strObj变量

引用数据类型的两个对象的值和对应的两个的引用都不一样

console.log(strObj1 ==s trObj2)//false
console.log(strObj1 ===s trObj2)//false

总结:

1.使用直接赋值 字符串的形式给定当前变量为基本数据类型

2.使用new String() 进行定义的形式 构建是引用类型的对象 new String() 里面的参数可以是任意类型 最后都会调用toString方法转为String

如果不使用 new 关键词 等于没有开辟新的内容来存储引用也就是当前的类型不是对象类型(基本对象类型)

而如果使用了new关键词 等于开辟了一个新的内存空间存储 那么就是对象类型

字符串属性

1.数组是一个容器 字符串也是一个容器

2.length属性 计算字符串的长度 一个字符为一个位置

3.也可以通过下标获取对应的字符 下标也是从0开始到length-1结束

4.数组是可变 字符串是不可变的(是常量 不能修改的量)

5.数组的length属性是可以修改的 字符串的length只能获取不能修改

6.字符串增删改查方法 不能操作原本的字符串 只能返回一个新的字符串

7.不能通过length改变字符串的长度 不能通过下标赋值来改变字符串(只读变量)

字符串常用方法

1.字符串是一个容器 所以对应的存在增删改查的方法 但是由于字符串是只读 增删改的方法是不会修改原本的字符串 而是可以返回一个新的字符串

查询方法

1.通过下标查询对应的字符 相当于字符串的下标

var str = 'abc'

2.通过charAt方法来获取 返回的是字符串 根据下标来获取字符串

3.charCodeAt()可以获取ascii码 获取对应下标位置的字符的ascii码

将ascii码反转为字符 fromcharCode静态方法 利用关键词(内置对象).对应的方法 这个方法为内置的静态方法 解码操作

fromcharCode根据ascii转换为对应的字符串

var codeStr = String.fromcharCode(100);

4.indexof 根据字符串来返回对应的第一次出现的下标 找不到-1

5.lastindexof 也是同样适用

  1. .search()方法 可以传入string也可以正则表达式

传入为string类型的时候 根据你传入的参数进行对比 返回第一次对比成功的下标 如果没有返回-1

RegExp 正则对象 一般以两个 // 包起来

正则表达式

1.正则表达式是一个用于匹配的表达式 它可以用来匹配任意的字符串

2.RegExp为正则对象 一般的正则表达式以//包起来 里面书写就是对应匹配的正则表达式

3./abc/匹配abc 的正则

4.正则表达式的常用内容

5.^表示开头 $符号表示结束(要满足他的开头和结束要求更严格)

6,[]表示元素其中一个 {}表示个数(都要包起来)

var reg = /^abc&/ //需要是以a开头 c结尾的
var str = 'cbacbaabcabc'
console.log(str.search);//-1
//
var reg = /[df]/   //表示d和f其中一个
var str = 'abcefg'
console.log(str.search);//4

var reg = /[ac]{2}/ //匹配 aa cc ac ca
var str = 'acbccdc'
console.log(str.search);//0
//
var reg = /[a]+/ //匹配 a aa aaa...
var str = 'cbacbaabcabc'
console.log(str.search);//2
/
//在[]内可以用-表示区间但是必须是正的区间
var reg = /[a-z]/ 
var reg = /[0-9]/ 
var reg = /[A-z]/ 
var reg = /[a-zA-Z1-9]/ 

\W表示字母数字及下划线 \W大写相反 除了字母数字及下划线都匹配
\s 空白字符  \S非空白字符

替换方法

替换匹配的值 变成另外一个值 返回一个新的字符串

replace()只会找到第一个匹配的 将他替换为指定的字符串

同样支持正则

参数1为对应的搜索条件 (支持string 或者 正则) 参数2为替换的内容

replace('a','c)//将a替换为c 这里只能运行一次 他只会找到第一个a 将a替换为c

截取方法

.substring() 返回新的字符串

var str = 'abcdef'
var newStr = str.substring(1,3)//开始位置下标 截取到结束位置下标 不包含结束位置

分割方法

分割为数组 split( ,1)两个参 第一个以什么分割成数组 第二个表示数量分割后的数量 从前数

var str ='a,b,cd,e'
 //分割方法 分割为数组  数组的join连接成字符串
      var str = "a,b,cd,e";
      //可以根据正则截取 返回值为string类型数组
      var strArr = str.split("c"); //根据,来进行分割
      console.log(strArr);
      var strArr = str.split(",", 2); //limit表示数量
      //不写表示所有的全部填入数组 写上去就是填入指定个数的元素到数组(从前往后填入)
      console.log(strArr);

concat方法

str1.concat(str2)//将里面的str添加给str1 返回一个新的数组 str1 没变

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值