字符串中每个双字或三字的Javascript函数
这里我有一些javascript,可以为字符串中的每个单独单词运行一个函数:字符串中每个双字或三字的Javascript函数,javascript,jquery,Javascript,Jquery,这里我有一些javascript,可以为字符串中的每个单独单词运行一个函数: var input = 'this is some text'; var words = input.split(' '); $.each(words,function(i){ //Do something }); 但是我如何做类似的事情来为字符串中的每一对单词运行函数呢?像这样: 这是 是一些 一些文本 甚至三个字: 这是一些 这是一些文字 使用通用for循环,而不是使用foreach循环 var w
var input = 'this is some text';
var words = input.split(' ');
$.each(words,function(i){
//Do something
});
但是我如何做类似的事情来为字符串中的每一对单词运行函数呢?像这样:
- 这是
- 是一些
- 一些文本
- 这是一些
- 这是一些文字
for
循环,而不是使用foreach
循环
var words = "this is some text".split(' ');
// take the words 2 by 2
for (var i = 0; i < words.length - 1; ++i) {
var currentWord = words[i],
nextWord = words[i + 1];
// do something
}
// take the words 3 by 3
for (var i = 1; i < words.length - 1; ++i) {
var previousWord = words[i - 1],
currentWord = words[i],
nextWord = words[i + 1];
// do something
}
var words=“这是一些文本”。拆分(“”);
//把单词2乘2
对于(变量i=0;i
你也可以处理一般情况
var PACKET_SIZE = 2;
var words = "this is some text".split(' ');
for (var i = 0; i <= words.length - PACKET_SIZE; ++i) {
var packet = words.slice(i, i + PACKET_SIZE);
// do something
}
var包大小=2;
var words=“这是一些文本”。拆分(“”);
对于(var i=0;i使用公共for
循环,而不是使用foreach
循环
var words = "this is some text".split(' ');
// take the words 2 by 2
for (var i = 0; i < words.length - 1; ++i) {
var currentWord = words[i],
nextWord = words[i + 1];
// do something
}
// take the words 3 by 3
for (var i = 1; i < words.length - 1; ++i) {
var previousWord = words[i - 1],
currentWord = words[i],
nextWord = words[i + 1];
// do something
}
var words=“这是一些文本”。拆分(“”);
//把单词2乘2
对于(变量i=0;i
你也可以处理一般情况
var PACKET_SIZE = 2;
var words = "this is some text".split(' ');
for (var i = 0; i <= words.length - PACKET_SIZE; ++i) {
var packet = words.slice(i, i + PACKET_SIZE);
// do something
}
var包大小=2;
var words=“这是一些文本”。拆分(“”);
对于(var i=0;i只需使用增量为2或3的for循环:
for( var i = 0; i < words.length; i += 2 ) {
//Do something with words[i]
}
for(变量i=0;i
只需使用增量为2或3的for循环:
for( var i = 0; i < words.length; i += 2 ) {
//Do something with words[i]
}
for(变量i=0;i
您可以
var input = 'this is some text';
var words = input.split(' ');
var length = 2;
var str;
$.each(words, function(j) {
str = "";
for (i = 0; i < length && (j + i) < words.length; i++) {
str += " " + words[j + i];
}
$("#container").append("<div>" + str + "</div>");
});
var输入='这是一些文本';
变量字=输入。拆分(“”);
var长度=2;
var-str;
$。每个(单词、函数(j){
str=“”;
对于(i=0;i
您可以通过更改length
参数的值来更改图案长度
你可以做
var input = 'this is some text';
var words = input.split(' ');
var length = 2;
var str;
$.each(words, function(j) {
str = "";
for (i = 0; i < length && (j + i) < words.length; i++) {
str += " " + words[j + i];
}
$("#container").append("<div>" + str + "</div>");
});
var输入='这是一些文本';
变量字=输入。拆分(“”);
var长度=2;
var-str;
$。每个(单词、函数(j){
str=“”;
对于(i=0;i
您可以通过更改length
参数的值来更改图案长度
以下代码使用split
函数为您提供一个单词数组,然后应用map
将其转换为一个数组,每个数组的大小为n。join
函数用于将这些数组再次转换为空格分隔的字符串
var s=“这是由几个单词组成的文本”;
var n=2;
var结果=s.split(“”).map(函数(val、索引、arr){
返回arr.slice(索引,索引+n).join(“”);
});
警报(结果);
下面的代码使用拆分
函数为您提供一个单词数组,然后应用映射
将其转换为一个数组,每个数组的大小为n。连接
函数用于将这些数组再次转换为空格分隔的字符串
var s=“这是由几个单词组成的文本”;
var n=2;
var结果=s.split(“”).map(函数(val、索引、arr){
返回arr.slice(索引,索引+n).join(“”);
});
警报(结果);
只有一个循环的建议
函数getN(数组,n){
var结果=[];
forEach(函数(a,i,aa){
i+n只是一个有一个循环的提议
函数getN(数组,n){
var结果=[];
forEach(函数(a,i,aa){
i+n你的意思是在逗号上拆分吗?words=input.split(',');
@PaulFitzgerald没有在空格上拆分,我使用的逗号只是表示分隔,你的意思是在逗号上拆分吗?words=input.split(','));
@PaulFitzgerald没有空格分隔,我使用的逗号只是表示分隔不错的答案-我不喜欢使用正则表达式,因为我将覆盖大量文本:)我问-你有单词。slice(I,I+PACKET_SIZE)返回“this,is,some”…我如何得到PACKET=“this is some”?您可以再次加入数组。words.slice(i,i+数据包大小)。join(“”)
回答很好-不喜欢使用正则表达式,因为我将覆盖大量文本:)我问-您有words.slice(i,i+数据包大小)返回“this,is,some”…我如何获得PACKET=“this is some”?您可以再次加入数组。words.slice(i,i+数据包大小)。join(“”)
@Nina Scholz如何做:)@Nina Scholz如何做:)