JavaScript内置方法 操作数组和字符串

在JavaScript中,数组和字符串是非常常见的数据类型,它们各自有一套强大的内置方法。以下是一些常用的数组和字符串方法,以及它们的实例和注意事项:

数组操作方法:

1. push() / pop()
  • push():向数组的末尾添加一个或多个元素。

    let arr = [1, 2, 3];
    arr.push(4);
    console.log(arr); // 输出: [1, 2, 3, 4]
    
  • pop():删除并返回数组的最后一个元素。

    arr.pop();
    console.log(arr); // 输出: [1, 2, 3]
    
2. shift() / unshift()
  • shift():删除并返回数组的第一个元素。

    arr.shift();
    console.log(arr); // 输出: [2, 3]
    
  • unshift():向数组的开头添加一个或多个元素。

    arr.unshift(0);
    console.log(arr); // 输出: [0, 2, 3]
    
3. splice()
  • splice():改变原数组,通过删除或替换某些元素来插入新的元素。
    arr.splice(1, 1, 'a', 'b'); // 从索引1开始删除1个元素,插入'a'和'b'
    console.log(arr); // 输出: [0, 'a', 'b', 3]
    
4. slice()
  • slice():返回一个新的数组,包含原数组中从起始索引到结束索引的元素。
    let newArr = arr.slice(1);
    console.log(newArr); // 输出: ['a', 'b', 3]
    
5. concat()
  • concat():连接两个或多个数组。
    let arr1 = [1, 2, 3];
    let arr2 = [4, 5, 6];
    let concatArr = arr1.concat(arr2);
    console.log(concatArr); // 输出: [1, 2, 3, 4, 5, 6]
    
6. join()
  • join():将数组中的所有元素连接成一个字符串。
    let joinedStr = arr.join(', ');
    console.log(joinedStr); // 输出: 1, 2, 3
    

字符串操作方法:

1. charAt() / charCodeAt()
  • charAt():返回指定位置的字符。

    let str = "Hello, World!";
    console.log(str.charAt(0)); // 输出: H
    
  • charCodeAt():返回指定位置的字符的 Unicode 编码。

    console.log(str.charCodeAt(0)); // 输出: 72
    
2. concat()
  • concat():连接两个或多个字符串。
    let newStr = str.concat(' This is a test.');
    console.log(newStr); // 输出: Hello, World! This is a test.
    
3. replace()
  • replace():返回一个新字符串,用其他字符串替换所有匹配的子串。
    let replacedStr = str.replace('World', 'JavaScript');
    console.log(replacedStr); // 输出: Hello, JavaScript!
    
4. split()
  • split():根据一个指定的分隔符将字符串分割成一个子字符串数组。
    let words = str.split(',');
    console.log(words); // 输出: ["Hello", " World!"]
    
5. slice()
  • slice():返回一个新的字符串,包含从开始到结束(不包括结束)的子字符串。
    let subStr = str.slice(7);
    console.log(subStr); // 输出: World!
    
6. substring()
  • substring():返回一个新的字符串,包含从开始到结束(包括结束)的子字符串。
    let subStr2 = str.substring(7);
    console.log(subStr2); // 输出: World!
    
7. toLowerCase() / toUpperCase()
  • toLowerCase():将字符串转换为小写。

    let lowerStr = str.toLowerCase();
    console.log(lowerStr); // 输出: hello, world!
    
  • toUpperCase():将字符串转换为大写。

    let upperStr = str.toUpperCase();
    console.log(upperStr); // 输出: HELLO, WORLD!
    
8. trim()
  • trim():去除字符串两端的空白字符。
    let trimmedStr = str.trim();
    console.log(trimmedStr); // 输出: Hello, World!
    

注意事项:

  1. 方法返回值:大多数数组和字符串方法返回一个新的数组或字符串,原始数组或字符串不会被改变。例如,push()pop()会改变原始数组,但返回新的长度。

  2. 参数顺序:在某些方法中,如splice()slice(),参数的顺序非常重要。splice()的第一个参数是开始的位置,第二个参数是删除的数量,第三个参数及以后的参数是要插入的新元素。slice()的第一个参数是开始的位置,第二个参数是结束的位置(不包括结束位置)。

  3. 字符串编码:使用charCodeAt()时,返回的是字符的 Unicode 编码,而不是字符本身。

  4. 字符串连接:使用concat()时,返回的是一个新的字符串,而+运算符也可以用于字符串连接,但它不会返回一个新的字符串,而是会修改原始字符串。

  5. 数组去重:如果你需要创建一个没有重复元素的数组,可以使用Set对象或者手动遍历数组并添加元素。

这些方法是JavaScript中数组和字符串操作的基础,掌握它们对于编写高效和可维护的代码至关重要。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/27520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

禁用PS/Photoshop等一系列Adobe旗下软件联网外传用户数据操作

方案一: 下载火绒杀毒,在联网请求上禁用Adobe软件的联网请求,甚至还可以额外发现哪些是它要想要偷偷摸摸干的。 方案二: 最后注意: 用盗版软件只是获得了使用权!

Docker系列.Docker Desktop中如何启用Kubernetes

Docker技术概论 Docker Desktop中如何启用Kubernetes - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.…

Linux编辑器 vim使用 (解决普通用户无法进行sudo提权问题)

文章目录 一.vim是什么命令模式底行模式 二.关于vim暂停问题三.注释批量化注释批量化去注释 四.解决普通用户无法进行sudo提权问题五.vim的配置 一.vim是什么 用过VS的都知道,拥有着编辑器编译器调试.编写C,C,python等的功能。就是集成 Linu…

骤旱(Flash drought)相关小结

1. 简介 2. 数据集 3. 识别算法 待更新

1606 - 求一个两位数倒序的结果

问题描述 请输出一个两位的整数 n,倒过来的数,也就是输出这个两位数个位和十位颠倒的结果。 比如:整数 23 倒过来是 32,整数 18 倒过来是 81 ,整数 20 倒过来是 2。 输入 两位整数 n。 输出 n 倒过来的整数。 样…

LeetCode | 434.字符串中的单词数

这道题直接使用语言内置的 split 函数可直接分离出字符串中的每个单词,但是要注意区分两种情况:1、空串;2、多个空格连续,分割后会出现空字符的情况,应该舍弃 class Solution(object):def countSegments(self, s):&qu…

java算法:选择排序

文章标题 概述与基本实现优缺点尝试优化 概述与基本实现 选择排序(Selection Sort)是一种简单直观的排序算法。它的基本思想是每次从待排序的元素中选择最小(或最大)的元素,放置在已排序的部分的末尾,直到…

JAVA系列---函数式接口

函数式接口的定义 一个函数式接口有且仅有一个抽象方法(SAM,single abstract method)。对于接口来说抽象方法必须重写,默认方法可选重新,静态方法不可重新。Object 类中的 public abstract method 不会被视为单一的抽象方法。这些方法对于函…

java技术专家面试指南100问【java学习+面试宝典】(四)

如何避免“伪共享”? 字节填充(创建变量时,使用字段对其进行填充,避免多个变量被分派到同一个缓存行里)。JDK8提供了一个Contended注解来解决伪共享。 Netty 的应用场景了解么? Netty 主要用来做网络通信…

数据结构学习笔记-树

1.树的存储结构 (1)双亲表示法 顺序存储结点数据,结点中保存父节点在数组中的下标。 优点:找父节点方便;缺点:找孩子不方便 #define MAX_TREE_SIZE 100 //树中最多结点数 typedef struct{ //树的…

微信小程序点击打开关联企业微信客服

wx.openCustomerServiceChat({extInfo: {url: https://work.weixin.qq.com/kfid/kfc****},corpId: *****,})

磁盘性能概述与磁盘调度算法

目录 1. 磁盘性能概述 1. 数据传输速率 2. 寻道时间 3. 旋转延迟 4. 平均访问时间 2. 早期的磁盘调度算法 1. FIFO(First-In-First-Out)调度算法 2. SSTF(Shortest Seek Time First)调度算法 3. SCAN(Elevator…

Dubbo3 服务原生支持 http 访问,兼具高性能与易用性

作者:刘军 作为一款 rpc 框架,Dubbo 的优势是后端服务的高性能的通信、面向接口的易用性,而它带来的弊端则是 rpc 接口的测试与前端流量接入成本较高,我们需要专门的工具或协议转换才能实现后端服务调用。这个现状在 Dubbo3 中得…

SVN 报错Error: Unable to connect to a repository at URL解决方法

1. 报错背景: 使用ssh 用svn拉取仓库代码时,出现如下报错: Can’t create session: Unable to connect to a repository at URL svn://127.0.0.1 …. Can’t connect to host ‘127.0.0.1’: Connection refused at C:/Program Files/Git/mi…

蓝牙耳机怎么连接电脑?轻松实现无线连接

蓝牙耳机已经成为许多人生活中不可或缺的一部分,不仅可以方便地连接手机,还能轻松连接电脑,让我们在工作和娱乐时享受无线的自由。然而,对于一些用户来说,将蓝牙耳机与电脑连接可能会遇到一些问题。本文将介绍蓝牙耳机…

从大型语言模型到大脑语言理解:探索话语理解的神经机制

随着科技的飞速发展,人工智能领域取得了令人瞩目的成就。在这其中,大型语言模型(LLMs)以其卓越的性能和广泛的应用前景,成为了当前研究的热点。然而,尽管LLMs在文本生成、语言翻译等领域展现出了惊人的能力…

镭速如何做到数据同步文件及文件夹的ACL属性?

数据文件同步时,除了要同步文件的内容,还要对文件的属性做同步。权限属性作为一个重要的文件属性,是属性同步的重中之重,控制着不同用户与用户组对文件和文件夹的访问权限。不同的操作系统有着自己不同的权限控制机制,…

2786. 访问数组中的位置使分数最大 Medium

给你一个下标从 0 开始的整数数组 nums 和一个正整数 x 。 你 一开始 在数组的位置 0 处&#xff0c;你可以按照下述规则访问数组中的其他位置&#xff1a; 如果你当前在位置 i &#xff0c;那么你可以移动到满足 i < j 的 任意 位置 j 。 对于你访问的位置 i &#xff0c;…

C++ C_style string overview and basic Input funcitons

write in advance 最近在做题&#xff0c;遇到一个简单的将console的输入输出到文件中的简单题目&#xff0c;没有写出来。悔恨当初没有踏实地总结string 相关的 I/O 以及与文件的操作。这篇文章旨在记录基础的字符I/O, 简单常用的文件I/O操作函数。 当然&#xff0c;你会说C…

第2章 Rust初体验6/8:Option枚举及其变体:能避免空指针异常问题:猜骰子冷热游戏

讲动人的故事,写懂人的代码 2.6 故事4: 一直让玩家不断猜 我们全班要一起用三种语言来写第4个故事啦。这可能是我们所有故事中最复杂的一个了。不过别担心,贾克强已经把这个故事的需求都用投影仪展示出来了。 程序会提示玩家猜两个骰子的点数之和。如果玩家第一次输入点数之…