JS中字符串的创建、操作及其方法

本文详细介绍了JavaScript中字符串的创建方式,包括字面量和使用String构造函数,并探讨了字符串的常用操作,如获取长度、遍历以及通过索引访问。文章还重点讲解了字符串拼接的两种方法:普通加号和模板字符串的使用。此外,还列举了多个字符串内置方法的用法,如charAt、charCodeAt、substr、substring,以及toUpperCase和toLowerCase。最后,通过两个小练习展示了字符串反转和关键字替换的实际应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

字符串创建:
1)通过字面量的形式创建字符串 用的比较多
var str = “hello” 使用双引号包起来
var str = ‘hello’ 使用单引号包起来
2)new 一个类创建一个字符串
var str = new String(“hello”);
区别:
在控制台打印时有区别,使用起来没什么区别


提示:以下是本篇文章正文内容,下面案例可供参考

一、创建字符串

<script>
        // 创建字符串
        var str1 = "hello"; //通过字面量创建
        var str2 = new String("world"); //通过类创建

        var str3 = "  "; // 一个字符串中,也可以是空格
        console.log(str1);
        console.log(str2);
		
		//字符串本身也是对象:
        //str.length  获取字符串中共多少个字符
        console.log(str1.length);
        str1.length = 666; // 设置length属性  并不能设置成功,length是只读
        console.log(str1);
        console.log(str1.length);
    </script>

结果如下:
在这里插入图片描述

二、字符串的操作

  1. 获取字符串长度(符串中共多少个字符)。 str.length, 空格也是一个字符。length是只读,只能获取,不能设置。
  2. 字符串也是有索引的,索引也是从0开始,可以通过索引来获取某个字符,但是不能设置。
  3. 字符串也可以遍历(取出字符串每一个字符)
	<script>
        var str = "hello world~";
        console.log(str);
        console.log("---------------------");
        // 通过某个索引来获取某个字符
        console.log(str[0]);
        console.log(str[6]);
        console.log("---------------------");
        for(var i=0; i<str.length; i++){
            console.log(str[i]);
        }
    </script>

结果如下:
在这里插入图片描述

三、字符串拼接

1.普通“+”拼接

之前拼接字符串靠 “+”。
代码如下(示例):

	<script>
        var name = "wangcai";
        var age = 20;

        // name+"今年"+age 叫字符串拼接
        var str = name+"今年"+age;   // "name 今年 age "
        console.log(str);
    </script>

结果如下:
在这里插入图片描述

2.模板字符串

模板字符串:使用的是反引号:`` 可以把一个字符串放到一个反引号中。
代码如下(示例):

<script>
        var name = `xiaoqiang`;  // `xiaoqiang`也表示一个字符串
        var age = 110;

        // 在``中可以写${}  {}中可以写变量
        var str = `${name}今年${age}`;  // `${name}今年${age}`也是字符串
        console.log(str);

        var str2 = `${ 110 * 2 }~~~~~~~~~~~`;
        console.log(str2);
    </script>

结果如下:
在这里插入图片描述

四、字符串中的方法

美国发明了电脑,电脑上只需要存储美国的符号就OK a~zA-Z0~9 #$%^&*()
    编码:ASCII

    电脑传到其它的国家
    其它的国家,需要把它的符号或字编码让电脑处理

    中国:GB2312 ---> GBK --->... 
    ..... 

    Unicode(UTF8)  包含了全世界所有的符号

1.charAt()

charAt:从一个字符串中返回指定的字符

<script>
	var str = "hello world~";
    let res = str.charAt(1)
    console.log(res);
</script>

结果如下:
在这里插入图片描述

2.charCodeAt()

charCodeAt:方法返回 0 到 65535 之间的整数,表示给定索引处的 UTF-16 代码单元

<script>
	var str = "hello world~";
    var str = "中国"
    let res = str.charCodeAt(0);
    console.log(res);
</script>

结果如下:
在这里插入图片描述

3.substr()

substr:方法返回一个字符串中从指定位置开始到指定字符数的字符

<script>
	var str = "hello world~";
    console.log(str.substr(1,2));
</script>

结果如下:
在这里插入图片描述

4.substring()

substring: 方法返回一个字符串在开始索引到结束索引之间的一个子集

<script>
     var str = "hello world~";
     // 包前不包后
     console.log(str.substring(2,4));
</script>

结果如下:
在这里插入图片描述

5.toUpperCase()和toLowerCase()

toUpperCase():将小写字母转换为大写字母
toLowerCase():将大写字母转换为小写字母

<script>
	var str = "hello word";
    console.log(str.toUpperCase());
    var str2 = "AAABBB";
    console.log(str2.toLowerCase());
</script>

结果如下:
在这里插入图片描述

五、字符串小练习

1.字符串反转

把一个字符串进行反转。如:abcdef 结果:fedcba。


    <script>
        // var str = "a,b,c,d,e,f,g";
        // 尝试把一个字符串转成数组
        // console.log(str.split(','));

        var str = "abcdefg";
        // 使用下面的方案前提是你需要对数组和字符串中的方法非常熟悉
        // console.log(str.split("").reverse().join(""));

        var res = "";
        // for 遍历
        for(var i=str.length-1; i>=0; i--){
            // console.log(i);
            console.log( str[i] );
            res += str[i]
        }
        console.log(res);
    </script>

结果如下:
在这里插入图片描述

2.关键字隐藏

有一串字符串:fsadfasMMdrwqlkMMjfsavnasrnMMvasdfMMsdrwe,需求是把MM替换成 **。


**方式一:**
<script>
	let str = "fsadfasMMdrwqlkMMjfsavnasrnMMvasdfMMsdrwe";
   	while( str.indexOf("MM") !== -1 ){
        str = str.replace("MM","**")
    }
    console.log(str);
</script>

方式二:

<script>
	let str = "fsadfasMMdrwqlkMMjfsavnasrnMMvasdfMMsdrwe";
     // split 把一个字符串转成数组
     // join 把一个数组转成字符串
     console.log(str.split("MM").join("**"));
</script>

结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值