Luke's home Luke's home
首页
  • 前端文章

    • JavaScript
页面
技术
更多
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Luke xiao

K
首页
  • 前端文章

    • JavaScript
页面
技术
更多
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • javascript

    • 基础知识
    • 进阶知识

    • 函数

    • JS HTML DOM

    • JS 高级教程

      • JavaScript prototype(原型对象)
      • Number对象
      • 字符串属性和方法
        • String 对象
          • 语法
        • String 对象属性
          • constructor 属性
          • prototype 属性
        • String 对象方法
          • charAt()
          • charCodeAt()
          • concat
          • fromCharCode
          • indexOf
          • includes
          • lastIndexOf
          • match
          • repeat
          • replace
          • search
          • slice
          • split
          • startswith
          • substr
          • substring
          • toLowerCase toUpperCase
          • trim
          • valueOf()
          • toString()
      • JavaScript Date(日期) 对象
      • JavaScript Array(数组) 对象
      • JavaScript Math(算数) 对象
    • 浏览器BOM

    • HTML5新特性

    • CSS3新特性

  • 布局

  • less

  • js库

  • 前端
  • javascript
  • JS 高级教程
lukexiao
2021-04-28

字符串属性和方法

# String 对象

String 对象用于处理文本(字符串)。

String 对象创建方法: new String()。

# 语法

var txt = new String("*string*");

或者更简单方式:

var txt = "*string*";
1
2
3
4
5

# String 对象属性

属性 描述
constructor (opens new window) 对创建该对象的函数的引用
length (opens new window) 字符串的长度
prototype (opens new window) 允许您向对象添加属性和方法

# constructor 属性

constructor 属性返回对 String 对象属性创建的函数。

var txt = "Hello World!";
console.log(txt.constructor);
1
2

结果:[Function: String]

这个字符串的函数是 string函数

# prototype 属性

prototype 属性允许您向对象添加属性和方法

注意: Prototype 是全局属性,适用于所有的 Javascript 对象。

# 语法

object.prototype.name=value
1
function employee(name,jobtitle,born){
    this.name=name;
    this.jobtitle=jobtitle;
    this.born=born;
}
var fred=new employee("Fred Flintstone","Caveman",1970);
employee.prototype.salary=null;  // 给employee添加一个salary属性
fred.salary=20000; //给实例化的fred salary赋值
console.log(fred.salary);   //结果是2000
1
2
3
4
5
6
7
8
9

# String 对象方法

方法 描述
charAt() (opens new window) 返回在指定位置的字符。
charCodeAt() (opens new window) 返回在指定的位置的字符的 Unicode 编码。
concat() (opens new window) 连接两个或更多字符串,并返回新的字符串。
fromCharCode() (opens new window) 将 Unicode 编码转为字符。
indexOf() (opens new window) 返回某个指定的字符串值在字符串中首次出现的位置。
includes() (opens new window) 查找字符串中是否包含指定的子字符串。
lastIndexOf() (opens new window) 从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。
match() (opens new window) 查找找到一个或多个正则表达式的匹配。
repeat() (opens new window) 复制字符串指定次数,并将它们连接在一起返回。
replace() (opens new window) 在字符串中查找匹配的子串, 并替换与正则表达式匹配的子串。
search() (opens new window) 查找与正则表达式相匹配的值。
slice() (opens new window) 提取字符串的片断,并在新的字符串中返回被提取的部分。
split() (opens new window) 把字符串分割为字符串数组。
startsWith() (opens new window) 查看字符串是否以指定的子字符串开头。
substr() (opens new window) 从起始索引号提取字符串中指定数目的字符。
substring() (opens new window) 提取字符串中两个指定的索引号之间的字符。
toLowerCase() (opens new window) 把字符串转换为小写。
toUpperCase() (opens new window) 把字符串转换为大写。
trim() (opens new window) 去除字符串两边的空白
toLocaleLowerCase() (opens new window) 根据本地主机的语言环境把字符串转换为小写。
toLocaleUpperCase() (opens new window) 根据本地主机的语言环境把字符串转换为大写。
valueOf() (opens new window) 返回某个字符串对象的原始值。
toString() (opens new window) 返回一个字符串。

# charAt()

charAt() 方法可返回指定位置的字符。

第一个字符位置为 0, 第二个字符位置为 1,以此类推.

var a='i am fuck you'
var b='I am 16'
console.log(a.charAt(2)) // 字符串的第几个字符,结果a
1
2
3

# charCodeAt()

var a='i am fuck you'
var b='I am 16'
console.log(a.charCodeAt(2)) // 字符串的第几个字符的Unicode编码 ,结果97
1
2
3

# concat

var a='i am fuck you'
var b='I am 16'
console.log(a.concat(b,'haha')) // 把自身和其它的字符串链接
1
2
3

结果:i am fuck youI am 16haha

# fromCharCode

console.log(String.fromCharCode(97)) 
1

fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串。

**注意:**该方法是 String 的静态方法,字符串中的每个字符都由单独的 Unicode 数字编码指定。使用语法: String.fromCharCode()。

# indexOf

var a='today is thursday'
console.log(a.indexOf('d')) //字符串出现在的索引,结果2
1
2

# includes

var a='today is thursday'
console.log(a.includes('day')) //字符串是否包含,返回boolen,该结果true
1
2

# lastIndexOf

var a='today is thursday'
console.log(a.lastIndexOf('day')) //字符串位置从尾部开始索引,结果14
1
2

# match

match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。

注意: match() 方法将检索字符串 String Object,以找到一个或多个与 regexp 匹配的文本。这个方法的行为在很大程度上有赖于 regexp 是否具有标志 g。如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。

var a='today is thursday'
console.log(a.match(/day/)) 
console.log(a.match(/day/g))
1
2
3

结果:注意两个结果的区别

[ 'day', index: 2, input: 'today is thursday', groups: undefined ]

[ 'day', 'day' ]

# repeat

var a='today is thursday'
console.log(a.repeat(2)) //赋值字符串次数,并且连接起来
1
2

结果:today is thursdaytoday is thursday

# replace

var a='today is thursday'
console.log(a.replace('o','e')) //替换值 结果 teday is thursday
1
2

替换所有的值

var a='aaaaa'
console.log(a.replace(/a/g,'e')) //利用正则表达式后面加个g就是全部替换,结果eeeee
1
2

替换并忽略大小写

var a='aaAaA'
console.log(a.replace(/a/gi,'e')) //利用正则表达式后面加个g和i就是全部替换,结果eeeee
1
2

# search

var a='I am luke I am happy'
console.log(a.search('am')) //查找值第一次所在的位置
1
2

# slice

var a='I am luke I am happy'
console.log(a.slice(1,4)) //索引1到4的字符
var a='I am luke I am happy'
console.log(a.slice(-4,-1)) //索引-4到-1的字符

1
2
3
4
5

# split

var a='I am luke I am happy'
console.log(a.split(' ',4))//以什么来分割,然后,显示几个
1
2

结果:[ 'I', 'am', 'luke', 'I' ]

# startswith

var a='I am luke I am happy'
console.log(a.startsWith('am ',2))//从第几个开始,是否以指定的字符开头,返回boolen
1
2

# substr

var a='I am luke I am happy'
console.log(a.substr(2,4))//从第几个开始,到后面几个字符,返回am l
1
2

# substring

var a='I am luke I am happy'
console.log(a.substring(2,4))//从第几个开始到第几个结束,和slice的区别,这个只能非负结果am
1
2

# toLowerCase toUpperCase

var a='I am luke I am happy'
console.log(a.toLowerCase())//全部小写
console.log(a.toUpperCase())//全部大写
1
2
3

# trim

var str = "       Runoob        ";
alert(str.trim());//去除字符串的头尾空格:
1
2

# valueOf()

valueOf() 方法可返回 String 对象的原始值。

注意: valueOf() 方法通常由 JavaScript 在后台自动进行调用,而不是显式地处于代码中。

<script>

var str="Hello world!";
document.write(str.valueOf());

</script>
1
2
3
4
5
6

# toString()

var a=6

var b=a.toString()

console.log(typeof(b))//结果是string
1
2
3
4
5
编辑 (opens new window)
上次更新: 2021/08/13, 23:21:49
Number对象
JavaScript Date(日期) 对象

← Number对象 JavaScript Date(日期) 对象→

最近更新
01
流式布局
08-13
02
flex布局
08-13
03
rem布局
08-13
更多文章>
Theme by Vdoing | Copyright © 2021-2021 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式