为 PHP 的 `explode` 和 `implode` 函数寻找 JavaScript 类似物 [重复]
Posted
技术标签:
【中文标题】为 PHP 的 `explode` 和 `implode` 函数寻找 JavaScript 类似物 [重复]【英文标题】:Looking for JavaScript analogues for PHP's `explode` and `implode` functions [duplicate] 【发布时间】:2020-02-03 06:18:00 【问题描述】:我正在使用 javascript 做一些家庭作业。我需要做一些字符串和数组操作。我已经使用explode
和implode
函数解决了php 中的类似问题。我可以在 JavaScript 中使用类似的东西吗?
这是我的代码示例(针对此问题进行了简化)。我将使用explode
和implode
,即使它们在 JS 中不可用:
function getHashtags(str)
let words = explode(' ', str);
let hashtags = [];
words.forEach((word) =>
if (word[0] === '#')
hashtags.push(word);
);
function generateSentence()
let subjects = ['He', 'She', 'John', 'Jane', 'The girl', 'The boy', 'The dog'];
let verbs = ['ran', 'jumped', 'ate', 'danced', 'played', 'laughed'];
let adverbs = ['quickly', 'happily', 'merrily', 'slowly'];
const random = (length) => Math.floor(Math.random()*length);
let result = [];
result.push(subjects[random(subjects.length)]);
result.push(verbs[random(verbs.length)]);
result.push(adverbs[random(adverbs.length)]);
return implode(' ', result) + '.';
【问题讨论】:
【参考方案1】:JavaScript 有 String.split
和 Array.join
函数。
String.split
很像 php 的爆炸。它需要一个参数:要拆分的字符串分隔符。在您的情况下,您可以将explode
换成split
:
function getHashtags(str)
let words = str.split(' ');
let hashtags = [];
words.forEach((word) =>
if (word[0] === '#')
hashtags.push(word);
);
对于 implode,Array.join
非常相似。此函数还采用单个(可选)参数:当数组的每个元素连接在一起时放置在它们之间的字符串。如果省略此参数,则将数组的元素连接在一起,中间没有任何东西。您可以将您对 implode
的呼叫换成 join
。
但是,我应该指出,您不需要为此使用数组。既然想要的结果是一个字符串,为什么不先使用字符串连接来解决这个问题,而不先使用数组呢?像这样的:
function generateSentence()
let subjects = ['He', 'She', 'John', 'Jane', 'The girl', 'The boy', 'The dog'];
let verbs = ['ran', 'jumped', 'ate', 'danced', 'played', 'laughed'];
let adverbs = ['quickly', 'happily', 'merrily', 'slowly'];
const random = (length) => Math.floor(Math.random()*length);
let result = "";
result += subjects[random(subjects.length)] + " ";
result += verbs[random(verbs.length)] + " ";
result += adverbs[random(adverbs.length)] ".";
return result;
【讨论】:
以上是关于为 PHP 的 `explode` 和 `implode` 函数寻找 JavaScript 类似物 [重复]的主要内容,如果未能解决你的问题,请参考以下文章