news 2026/5/12 7:27:53

2025年10年Vue方向前端复习技术要点(2)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2025年10年Vue方向前端复习技术要点(2)

今日整理的简单6个题目,JavaScript算法题目,作为日常算法练手用。

1、求2数之和

从给定数组之中寻找和为目标数字的指定位置

// 求2数之和 const sumTwo = (arr, target) => { for (let i = 0; i < arr.length; i++) { for (let j = i + 1; j <= arr.length; j++) { if (arr[i] + arr[j] === target) { return [i, j] } } } return [] } console.log('sumTwo', sumTwo([1, 3, 5, 8], 8)) const sumTwo2 = (arr, target) => { const map = new Map() for (let i = 0; i < arr.length; i++) { const complement = target - arr[i] if (map.has(complement)) { return [map.get(complement), i] } map.set(arr[i], i) } return [] } console.log('sumTwo2', sumTwo2([1, 3, 5, 8], 9))

2、替换空格

替换空格: 实现一个函数,将一个字符串中的空格替换成“%20”或者指定字符

const replaceStr = (str,text = '%20') => { return str.split(' ').join(text) } console.log('replaceStr', replaceStr('hello world, a good nice day')) const replaceStr2 = (str) => { let newStr = '' for (let item of str) { if (item == ' ') { newStr += text } else { newStr += item } } return newStr }

3、斐波那契数列

实现类似累加功能,不大于50

// 斐波那契数列 function fbnq (n) { if (n <= 1) { return 1 } return fbnq(n - 1) + fbnq(n - 2) } //推荐方式 function fbnq2(n) { if (n <= 1) return n let a = 0, b = 1 for (let i = 2; i <= n; i++) { [a, b] = [b, a + b] // ES6解构赋值 } return b } console.log(fbnq2(10)) // 55

4、返回数字

返回给定字符串内的数字,非数字返回0

// 返回数字 function getNumber (str) { let newStr = '' for (let item of str) { if (Number(item)) { newStr += item } else { newStr += '0' } } return newStr } console.log('getNumber', getNumber('+2147#48^3647'));

5、返回重复的字母次数

// 返回重复的字母次数 function getRepeat (str) { let map = new Map() for (let item of str) { if (!map.has(item)) { map.set(item, 1) } else { map.set(item, map.get(item) + 1) } } return map } console.log('getRepeat', getRepeat('afdfadfdfdfdfdqqqqqqqqqqqqqq'));

6、返回最长单词

// 返回最长单词 function findLongestWord (str) { const words = str.replace(/[^\w\s]/g, '').split(/\s+/) let longestWord = '' let maxLength = 0 for (let word of words) { if (word.length > maxLength) { maxLength = word.length longestWord = word } } return { longestWord, length: maxLength } } console.log(findLongestWord("JavaScript and TypeScript are great"))
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/5 8:35:21

DOOM帧同步技术深度解析:网络同步技术的核心原理与实战指南

DOOM帧同步技术深度解析&#xff1a;网络同步技术的核心原理与实战指南 【免费下载链接】DOOM DOOM Open Source Release 项目地址: https://gitcode.com/gh_mirrors/do/DOOM 在经典射击游戏DOOM中&#xff0c;帧同步技术作为网络同步技术的核心机制&#xff0c;确保了所…

作者头像 李华
网站建设 2026/5/9 5:52:10

ES6 Map 全面解析:从基础到实战的进阶指南

在 ES6 之前&#xff0c;JavaScript 中用于存储键值对的主要数据结构是对象&#xff08;Object&#xff09;。但对象存在一些固有的局限性&#xff0c;比如键只能是字符串或 Symbol 类型、无法直接获取键值对数量、遍历方式不够灵活等。为了解决这些问题&#xff0c;ES6 引入了…

作者头像 李华
网站建设 2026/5/11 8:23:34

AutoHotkey鼠标轨迹记录终极指南:打造个性化操作自动化脚本

AutoHotkey鼠标轨迹记录终极指南&#xff1a;打造个性化操作自动化脚本 【免费下载链接】AutoHotkey 项目地址: https://gitcode.com/gh_mirrors/autohotke/AutoHotkey 想要告别重复繁琐的鼠标点击操作吗&#xff1f;通过AutoHotkey强大的鼠标轨迹记录功能&#xff0c;…

作者头像 李华
网站建设 2026/5/12 1:33:10

dots.ocr终极指南:基于1.7B参数的多语言文档智能解析方案

dots.ocr终极指南&#xff1a;基于1.7B参数的多语言文档智能解析方案 【免费下载链接】dots.ocr 项目地址: https://ai.gitcode.com/hf_mirrors/rednote-hilab/dots.ocr 在数字化时代&#xff0c;文档解析已成为信息处理的关键环节。然而传统OCR工具在面对复杂布局、多…

作者头像 李华
网站建设 2026/5/10 12:58:16

[Windows] SyncBackPro 绿色便携版(专业级数据同步与备份工具)

获取地址&#xff1a;SyncBackPro 绿色便携版 功能强大的专业数据同步、备份与恢复解决方案。绿色便携版无需安装&#xff0c;可配置复杂的多任务同步方案&#xff0c;支持本地磁盘、网络共享、FTP/SFTP、云存储&#xff08;如OneDrive, Google Drive&#xff09;等多种目标&a…

作者头像 李华
网站建设 2026/5/11 18:29:47

5大高效工具:彻底改变你的时序数据开发体验

5大高效工具&#xff1a;彻底改变你的时序数据开发体验 【免费下载链接】TDengine TDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industrial IoT and DevOps. 项目地址: http…

作者头像 李华