JS——String增删改查下的常用函数

本文详细介绍JavaScript中String类型的基本操作,包括字符串连接(concat)、修剪(trim)、切片(slice)、子串提取(substr, substring)等方法,以及replace、split等修改和拆分功能,同时涵盖查找功能如indexOf、lastIndexOf和字符访问(charAt)。

String作为Js中基本数据类型(Js六种基本数据类型:StringNumberNull(空值)undefinedBoolean(布尔)Object)之一,它的增删改查涉及到的一些常用函数如下

常用函数

增:concat

在这里插入图片描述

删:trimslicesubstrsubstring
  • str.trim:去除字符串两边的空格

在这里插入图片描述

  • slice(start,end):从start位置开始截取直到end-1位置结束
    在这里插入图片描述

注:如果出现负数则将负数与字符串长度相加(-4,-2)变为(3,5);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-39UvbjGD-1658564979505)(C:\Users\jie\AppData\Roaming\Typora\typora-user-images\image-20220723153540802.png)]

  • substr(start,lengh):从start开始,截取length个长度在这里插入图片描述

注:如果是出现负数,如果是在第一个参数的位置(start)则将该负数加上字符串长度(如果加上之后还是负数则按照0处理),如果是第二个参数则转为0
在这里插入图片描述

  • substring(start,end):从start位置开始,到end-1位置结束,如果遇见负数都转为0
    在这里插入图片描述
改:replacesplit
  • replace(被替换的字符串,替换的字符串)
    在这里插入图片描述

  • split:按照指定的字符切割,结果是返回数组
    在这里插入图片描述

查:indexoflastIndexOfcharAtmatchsearch
  • str.indexof:返回指定字符串在str出现的位置
    在这里插入图片描述

  • str.lastIndexOf:返回指定字符串在str最后一次出现的位置在这里插入图片描述

  • str.charAt():返回指定位置的字符
    在这里插入图片描述

  • search():用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串

在这里插入图片描述

  • match:可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
var str = "123";
var reg = RegExp(/3/);
if(str.match(reg)){
    // 包含        
}
### UniApp 中实现与数据库连接以完成增删改查操作 #### 1. 使用 SQLite 和 UniCloud 实现本地和云端的增删改查功能 对于在 **UniApp** 应用程序中集成数据库的操作,可以通过两种主要途径来实现:一种是利用内置支持的轻量级关系型数据库 **SQLite** 完成本地存储;另一种则是借助于 **UniCloud** 提供的服务端能力来进行远程服务器上的数据管理。 当采用 **SQLite** 方案时,开发者能够快速构建具备基础 CRUD (Create, Read, Update, Delete) 功能的应用模块[^1]。而通过引入 **UniCloud** 的云函数特性,则允许更加灵活高效地对接各类外部服务,包括但不限于 MySQL、MongoDB 等多种类型的数据库系统[^4]。 #### 2. 配置应用环境准备阶段 为了使项目顺利运行,在正式编码之前需先做好必要的准备工作: - 如果计划使用 **SQLite** ,则无需额外安装驱动包,因为该引擎已被打包进 Android/iOS 平台; - 对于打算接入其他种类的关系型或非关系型数据库而言,则可能涉及到特定客户端库的选择以及相应依赖项的添加工作; - 不论哪种情况都建议提前规划好 API 接口的设计思路,并确保前后端交互协议的一致性。 #### 3. 编写业务逻辑代码片段展示 下面给出一段简单的 JavaScript 函数作为例子说明如何执行更新记录的动作: ```javascript // 更新单条记录的方法定义 export function updateUser(userId, updatedData){ const db = uni.getDatabase(); // 获取当前实例下的默认数据库对象 try { await db.collection('users').doc(userId).update({ data:updatedData, success(res){ console.log(`成功修改了 ${res.stats.updated} 条文档`); }, fail(err){ throw new Error(`发生错误:${JSON.stringify(err)}`); } }); } catch(error){ console.error("Error updating document:", error); } } ``` 此段脚本展示了怎样运用官方提供的 `uni.getDatabase()` 方法获取到一个可操作的数据集句柄之后再调用其链式方法 `.collection().doc().update()` 向指定位置发送变更请求。 另外值得注意的是,如果目标平台为 H5 或者桌面版的话,还需要考虑跨域资源共享(CORS)策略的影响因素,适当调整 Webpack 构建工具的相关设置以适应实际需求场景。 #### 4. 创建控制器类处理HTTP请求 针对较为复杂的业务流程设计模式下推荐建立专门用于接收来自前端页面传入参数并转发给后台微服务体系做进一步加工计算的中间层组件——即所谓的 "Controller" 。此类通常会继承自框架自带的基础父类从而获得诸如路由匹配解析等功能的支持[^3]。 ```typescript import { Controller, Get, Post, Body, Param } from '@nestjs/common'; import { UsersService } from './users.service'; @Controller('api/v1/users') export class UsersController { constructor(private readonly userService: UsersService){} @Post() async create(@Body() createUserDto: CreateUserDto): Promise<User> { return this.userService.create(createUserDto); } @Get(':id') findOne(@Param('id') id: string): Promise<User | undefined>{ return this.userService.findOne(id); } ... } ``` 上述 TypeScript 文件中的 `UsersController` 类负责监听 `/api/v1/users/:id` 路径下的 GET/POST 请求事件并将它们分发至对应的处理器内部去响应具体的动作指令。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值