字符串与字符串属性

字符串

字符串是js的一种数据类型,用""或’'括起来

字符串定义
1.
var str1 = 'hello'
2,
var str1 = new String('hello')

1,new String()里面的参数可以是任意类型,最后都会调用toString方法转为string类型

2,如果不使用new关键词,等于没有开启新的内容空间来存储引用,也就是当前的类型不是对象类型,而是基本数据类型

字符串的属性和方法

数组是一个容器,字符串也是一个容器,所以对应存在增删改查的方法

由于字符串是只读,增删改查是不会修改原本的字符串,而是返回一个新的字符串

1,length 长度

​ 不能改变字符串的长度,不能通过下标赋值来改变字符串

var str = '123'
        console.log(str.length);//3

​ 计算字符串的长度

用下标找值,
//通过下标查询对应的字符
var str = 'abac'
console.log(str[0]); //a       
               
charAt方法找值
// 通过charAt方法来获取,返回的是字符串
console.log(str.charAt(0)); //a 等同于str[0]
用charCodeAt获取ASCII码
// 获取对应下标值的ASCII码
console.log(str.charCodeAt(0)); //97
用fromCharCode将ASCII反转为字符

​ 方法为内置的静态方法

// 将ASCII反转为字符
var codeStr = String.fromCharCode(100)
console.log(codeStr); //d
indexOf找值的下标
// indexOf 根据字符串来返回对应的第一次出现的下标,找不到返回-1
console.log(str.indexOf('a')); //0
console.log(str.indexOf('a', 3)); //-1   从下标1开始找起
// lastIndexOf 根据字符串来返回对应的第一次出现的下标,从后面往前找,找不到返回-1
console.log(str.lastIndexOf('a')); //2
substring截取方法
var str3 = 'abcdefgh'
var newStr3 = str3.substring(1, 3) //从下标1开始,截取到下标3结束,不包括结束下标位置
console.log(newStr3); //bc
split分割方法

​ 分割为数组,与数组的join相反(也可以根据正则截取,返回值为string类型数组)

var str4 = 'a,b,c,de,f'
var strArr = str4.split(',') //用,分割
var strArr2 = str4.split(',', 2) //截取2个
console.log(strArr); //'a', 'b', 'c', 'de', 'f'
console.log(strArr2); //'a', 'b'
转大写,转小写
var str5 = 'ASDF'
var bstr5 = str5.toLocaleLowerCase()
console.log(bstr5); //asdf
var lstr5 = str5.toLocaleUpperCase()
console.log(lstr5);//ASDF
Math 数学一系列计算的函数(静态函数)
//静态属性 Π
console.log(Math.PI); //3.1415.....
//科学计算 E
console.log(Math.E); //2.71....
//关于Math的静态方法
//求大小 max最大值  min最小值
console.log(Math.max(2, 3)); //3
console.log(Math.min(2, 3)); //2
//向下取整
console.log(Math.floor(3.9)); //3
 //向上取整
console.log(Math.ceil(3.2)); //4
//四舍五入
console.log(Math.round(3.4)); //3
//幂次方
console.log(Math.pow(1,10));//1 1的10次方
//开平方
console.log(Math.sqrt(9));//3
//随机数
console.log(Math.random());//   随机生成一个0到1的数,不包括1
//去绝对值
console.log(Math.abs(-2)); //2
replace替换匹配的值,变成另一个值,返回一个新的字符串
var str2 = 'abababab'
var newStr = str2.replace('a', 'c') //将a替换成c,但只会找第一个a进行替换
console.log(newStr);
//将所有的a替换成c的方法,用循环
        for (var i = 0; i < str2.length; i++) {
            if (str2.indexOf('a') != -1) { //只要还有a
                str2 = str2.replace('a', 'c') //将a替换成c
            } else {
                break
            }
        }
        console.log(str2);
search查询

​ search()里面的参数可以是正则

var str1 = 'abcgdjgf'
//查询,返回第一个匹配的下标,找不到返回-1
console.log(str1.search('abc')); //0
//正则表达式,是一个用于匹配的表达式,可以用来匹配任意的字符串
var re = /abc/
console.log(str1.search(re)); //0
正则表达式的常见内容

^表示开头 $表示结束

var re = /^abcgdjg$/
console.log(str1.search(re));//-1   一样才是0,只会是0和-1两种可能

[]表示元素其中一个,{}表示个数

var str = 'abcddf'
var re = /[cd]{3}/	//c或d一共至少有三个
console.log(str.search(re));//2

+表示一个或多个

var str = 'abcddf'
var re = /[d]+/ //d有一个或多个
console.log(str.search(re));//3

在[]内可以用 - 表示区间,但必须是正的区间

var re = /[a-z]/    //匹配abcd.....z 26个字母
var re = /[0-9]/    //匹配012..9 10个数
var re = /[a-z1-9]/ //匹配ab....z12...9
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值