服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - js教程 - 如何在 JavaScript 中的字符串的字符之间添加空格

如何在 JavaScript 中的字符串的字符之间添加空格

2022-12-15 21:08web前端开发 js教程

在今天的文章中,我们将学习如何轻松地在 JavaScript 中的字符串字符之间包含空格。

在今天的文章中,我们将学习如何轻松地在 JavaScript 中的字符串字符之间包含空格。

如何在 JavaScript 中的字符串的字符之间添加空格

1. String split() 和 Split join() 方法

要在字符串的字符之间添加空格,请对字符串调用 split() 方法以获取字符数组,然后对该数组调用 join() 方法以使用空格分隔符连接字符。

例如:

function addSpace(str) { return str.split('').join(' ');
} const str1 = 'coffee'; const str2 = 'banana'; console.log(addSpace(str1)); // c o f f e e console.log(addSpace(str2)); // b a n a n a

String split() 方法使用指定的分隔符将字符串拆分为子字符串数组。

const str1 = 'coffee,milk,tea'; const str2 = 'sun-moon-star'; console.log(str1.split(',')); // [ 'coffee', 'milk', 'tea' ] console.log(str2.split('-')); // [ 'sun', 'moon', 'star' ]

通过使用空字符串 ('') 作为分隔符,我们将所有字符串字符拆分为单独的数组元素。

const str1 = 'coffee'; const str2 = 'banana'; // Passing an empty string ('') to the split method // [ 'c', 'o', 'f', 'f', 'e', 'e' ] console.log(str1.split('')); // [ 'b', 'a', 'n', 'a', 'n', 'a' ] console.log(str2.split(''));

String join() 方法将数组中的每个字符串与分隔符组合在一起。 它返回一个包含串联数组元素的新字符串。

const arr = ['a', 'b', 'c', 'd']; console.log(arr.join(' ')); // a b c d console.log(arr.join('-')); // a-b-c-d console.log(arr.join('/')); // a/b/c/d

因此,将空格字符传递给 join() 会在生成的连接中用空格分隔字符。

在某些情况下,字符串已经在某些字符之间包含空格。 在这种情况下,我们的方法会在字符之间添加更多的空格。

function addSpace(str) { return str.split('').join(' ');
} // These strings have spaces between some characters const str1 = 'co  ffee'; const str2 = 'bana  na'; console.log(addSpace(str1)); // c o     f f e e console.log(addSpace(str2)); // b a n a     n a

这是因为空格 (' ') 也是一个字符,就像一个字母,调用 split() 会使它成为数组中的一个单独元素,该元素将与其他空格组合。

// These strings have spaces between some characters const str1 = 'co  ffee'; const str2 = 'bana  na'; // The space characters are separate elements of the // array from split() /**  * [  'c', 'o', ' ',  ' ', 'f', 'f',  'e', 'e' ]  */ console.log(str1.split('')); /**  * [  'b', 'a', 'n',  'a', ' ', ' ',  'n', 'a' ]  */ console.log(str2.split(''));

如果我们想避免字符的多重间距,我们可以在 split() 和 join() 之间插入对 filter() 方法的调用。

function addSpace(str) { return str .split('')
    .filter((item) => item.trim())
    .join(' ');
} // The strings have spaces between some characters const str1 = 'co  ffee'; const str2 = 'bana  na'; console.log(addSpace(str1)); // c o f f e e console.log(addSpace(str2)); // b a n a n a

Array filter() 方法返回一个新数组,其中仅包含原始数组中的元素,从传递给 filter() 的测试回调函数返回真值。 在空格 (' ') 上调用 trim() 会产生一个空字符串 (''),这在 JavaScript 中不是真值。 因此,从 filter() 返回的结果数组中排除了空格。

小技巧:

在 JavaScript 中,只有六个假值:false、null、undefined、0、' '(空字符串)和 NaN。 其他所有值都是真实的。

2. for…of 循环

对于命令的方法,我们可以使用 JavaScript for...of 循环在字符串的字符之间添加一个空格。

function addSpace(str) { // Create a variable to store the eventual result let result = ''; for (const char of str) { // On each iteration, add the character and a space // to the variable result += char + ' ';
  } // Remove the space from the last character return result.trimEnd();
} const str1 = 'coffee'; const str2 = 'banana'; console.log(addSpace(str1)); // c o f f e e console.log(addSpace(str2)); // b a n a n a

要处理前面讨论的情况,其中字符串在某些字符之间有空格,请在每次迭代的字符上调用 trim(),并添加一个 if 检查以确保它是真实的,然后再将它和空格添加到累积结果中:

function addSpace(str) { // Create a variable to store the eventual result let result = ''; for (const char of str) { // On each iteration, add the character and a space // to the variable // If the character is a space, trim it to an empty // string, then only add it if it is truthy if (char.trim()) { result += char + ' ';
    }
  } // Remove the space from the last character return result.trimEnd();
} const str1 = 'co  ffee'; const str2 = 'bana  na'; console.log(addSpace(str1)); // c o f f e e console.log(addSpace(str2)); // b a n a n a

总结

以上就是我今天跟你分享的关于JavaScript的基础知识,希望这些知识能够对你有用,如果你觉得有帮助的话,请记得点赞我,关注我,并将这篇文章分享给你的朋友。

原文地址:https://mp.weixin.qq.com/s?__biz=MjM5MDA2MTI1MA==&mid=2649134687&idx=2&sn=64fb06790a37b80afe0524be032468d1

延伸 · 阅读

精彩推荐
  • js教程JS代码实现页面切换效果

    JS代码实现页面切换效果

    这篇文章主要为大家详细介绍了JS代码实现页面切换效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    _Adoph9472021-12-29
  • js教程深入浅出JavaScript异步编程

    深入浅出JavaScript异步编程

    异步编程在JavaScript是很常见的,下面就来介绍几个异步编程的重要特性,它们可以使编写异步代码更容易。...

    前端充电宝9432022-10-31
  • js教程如何利用JavaScript实现二叉搜索树

    如何利用JavaScript实现二叉搜索树

    这篇文章主要给大家介绍了关于如何利用JavaScript实现二叉搜索树的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学...

    疯狂的技术宅7842022-02-22
  • js教程微信小程序使用Echarts和分包的完整步骤

    微信小程序使用Echarts和分包的完整步骤

    这篇文章主要给大家介绍了关于微信小程序使用Echarts和分包的完整步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价...

    little_little8422022-02-15
  • js教程原生js实现下拉框选择组件

    原生js实现下拉框选择组件

    这篇文章主要为大家详细介绍了原生js实现下拉框选择组件的开发,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    蒲公英芽4562022-01-05
  • js教程短视频(douyin)去水印工具的实现代码

    短视频(douyin)去水印工具的实现代码

    这篇文章主要介绍了市面上短视频(douyin)"去水印"的工具原来是这样实现的,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需...

    zz_jesse9252022-02-22
  • js教程全面解析js中的原型,原型对象,原型链

    全面解析js中的原型,原型对象,原型链

    这篇文章主要介绍了图解js中的原型,原型对象,原型链,帮助大家更好的理解和使用JavaScript,感兴趣的朋友可以了解下...

    菜小牛5142022-01-07
  • js教程JS+JQuery实现无缝连接轮播图

    JS+JQuery实现无缝连接轮播图

    这篇文章主要介绍了JS+JQuery实现无缝连接轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    南柯Seven7812021-12-23