String字符串不使用indexOf方法查找出第一次出现的下标
输入 str1="www.baidu.com" str2="baidu"
输出 str2在str1中第一次出现的位置,没有则返回-1,如上返回位置4
function findStrIndex (targetStr, findStr) { // 要查找的字符串不存在时,返回-1 if (!findStr) { return -1 } // 目标字符串和要查询的字符串相等时,返回起始位置0 if (targetStr === findStr) { return 0 } let length1 = targetStr.length let length2 = findStr.length // 查询的字符串长度大于目标时,目标肯定不包含被查询的,返回-1 if (length2 > length1) { return -1 } for (let i = 0; i < length1; i++) { let str = targetStr.substr(i, length2) if (str.length !== findStr.length) { return -1 } else { if (targetStr[i] === findStr[0]) { // 当循环到目标值中存在 查询值的第一个字符,截取出和查询值一样长度的字符 // 判断相等则返回下标不相等时继续查找下一个用于判断的字符 if (!(str === findStr)) { continue } else { return i } } } } } console.log(findStrIndex('www.baidu.cn', 'asd'))
我是一只酸菜鱼,又酸又菜又多余~~~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构