优美编程让前端飞

substring和splice

2020-05-14  本文已影响0人  小遁哥

有一个文本框,要在光标的位置上插入内容。

const userInputStr = "1234567";
const pos = 3;

首先想到substring

let resultStr =
  userInputStr.substring(0, pos) + 'xiaodun' + userInputStr.substring(pos);

不得不说,这里的pos 指的是 3 和 4 中间位置,不是很直观...

splice

let resultStr = [...userInputStr].splice(pos, 0, 'xiaodun').join("");

然后坑就来了,splice 会改变原数组,返回包含被删除项目的新数组,如果有的话。

Console面板中不太容易被察觉...

最终代码

const userInputStr = '1234567';
const pos = 3;
let list = [...userInputStr];
list.splice(pos, 0, 'xiaodun');
let resultStr = list.join('');

虽然直接对比多了个list变量 和 一行代码,一些情况下还是适用的。

上一篇 下一篇

猜你喜欢

热点阅读