剑指Offer——左旋转字符串(JS实现)

简介: 剑指Offer——左旋转字符串(JS实现)

题目描述

image.png

解题思路

  1. 首先将字符串转为字符数组。
  2. 定义两个临时数组,一个存放分割前的数组,一个存放分割后的数组。
  3. 依次遍历字符数组,如果索引下标+1小于等于n,则将其加入分割前的数组,反之加入分割后的数组。
  4. 使用拓展运算符合并两个数组。
  5. 使用for of循环将数组中的所有元素合并成字符串进行返回。

实现代码

var reverseLeftWords = function (s, n) {
    let temp = [];
    for(let v of s) {
        temp.push(v);
    }
    let temp2 = [];
    let temp3 = [];
    temp.some((value,index) => {
        if ((index + 1) <= n) {
            temp2.push(value);
        } else {
            temp3.push(value);
        }
    });
    const merge = [...temp3,...temp2];
    let str = '';
    for(let v of merge) {
        str = str + v;
    }
    return str;
};
相关文章
|
2月前
|
JavaScript 前端开发
JS几种拼接字符串的方法
JS几种拼接字符串的方法
53 1
|
4月前
|
存储 JavaScript 前端开发
JS上传文件(base64字符串和二进制文件流)
这篇文章介绍了两种JavaScript文件上传的方法:使用FileReader对象将文件读取为base64字符串上传,以及使用FormData对象以二进制文件流的形式上传文件,包括如何处理文件选择、读取和上传的详细代码示例。
526 2
JS上传文件(base64字符串和二进制文件流)
|
3月前
|
JavaScript
js 解析 byte数组 成字符串
js 解析 byte数组 成字符串
90 5
|
1月前
|
JavaScript 前端开发 数据处理
模板字符串和普通字符串在浏览器和 Node.js 中的性能表现是否一致?
综上所述,模板字符串和普通字符串在浏览器和 Node.js 中的性能表现既有相似之处,也有不同之处。在实际应用中,需要根据具体的场景和性能需求来选择使用哪种字符串处理方式,以达到最佳的性能和开发效率。
|
28天前
|
JavaScript 前端开发 索引
JavaScript学习第二章--字符串
本文介绍了JavaScript中的字符串处理,包括普通字符串和模板字符串的使用方法及常见字符串操作方法如`charAt`、`concat`、`endsWith`等,适合前端学习者参考。作者是一位热爱前端技术的大一学生,专注于分享实用的编程技巧。
23 2
|
3月前
|
存储 JSON JavaScript
「offer来了」保姆级巩固你的js知识体系(4.0w字)
该文章提供了JavaScript知识体系的全面复习资料,覆盖了从基础语法到高级特性如闭包、原型链、异步编程等多个方面,并通过大量的面试题和实例代码帮助巩固理解。
「offer来了」保姆级巩固你的js知识体系(4.0w字)
|
2月前
|
存储 JavaScript 前端开发
JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象
47 3
|
3月前
|
JavaScript 前端开发
javascript创建字符串
javascript创建字符串
|
3月前
|
JavaScript 前端开发
如何在JavaScript中替换字符串:一篇详细指南
如何在JavaScript中替换字符串:一篇详细指南
|
3月前
|
存储 JavaScript
js切割截取字符串方法
js切割截取字符串方法
58 2