Javascript 从数组中的文本中查找并放置单词

Javascript 从数组中的文本中查找并放置单词,javascript,Javascript,我想在课文中找到一个有我名字的单词。代码要求我首先找到单词的第一个字符,然后将剩余的字母放入hits[]数组中。我正在努力,但被卡住了 var text = "This is just Rohit."; var myName = "Rohit"; var hits = []; for (var i = 0; i < text.length; i++) { if(text[i] === myName[0] ) { for(j =

我想在课文中找到一个有我名字的单词。代码要求我首先找到单词的第一个字符,然后将剩余的字母放入hits[]数组中。我正在努力,但被卡住了

var text = "This is just Rohit.";
var myName = "Rohit";
var hits = [];
for (var i = 0; i < text.length; i++)
    {
        if(text[i] === myName[0] )
        {
            for(j = 0; j < myName.length; j++)
            {
                hits.push(text[i]);
            }; 
        };
    };

hits;
var text=这只是Rohit。; var myName=Rohit; var命中率=[]; 对于var i=0;iconsole.loghits.join 像这样的东西应该会有帮助。如果需要改变,请告诉我

var text = "This is just Rohit.";
var myName = "Rohit.";
var hits = [];

var array1=text.split(" ");
for (var i = 0; i < array1.length; i++)
{
   if(array1[i]==myName)
   {
      hits.push(array1[i].split(''));
   }
}
这部分是您使用的方法::

var text = "This is just Rohit.";
var myName = "Rohit";
var hits = [];
var x='';
for (var i = 0; i < text.length; i++)
    {
        if(text[i] === myName.charAt(0) && text[i-1]==" " )
        {
            for(j = i; j < (i+myName.length); j++)
            {
                console.log(text[j]);    
                x=x+text[j];
            }
        }
    }

hits[0]=x;

alert(hits);

在查看您的注释进行澄清之后,您似乎只希望您的名称作为新数组中的唯一元素

使用以下命令:

var text = 'Your name is Rohit.';
var name = 'Rohit';
var hits = [text.substring(text.indexOf(name), text.indexOf(name) + name.length)];

console.log(hits);
// ["Rohit"]

无法想象这会有多大帮助,但上面的代码可以满足您的需要。

只需忽略搜索文本并使用搜索词即可

var hits = []; 
var i=0; 
while (i<"Rohit".length) arr.push("Rohit"[i++]);
console.log(hits); 

// ["R", "o", "h", "i", "t"] 
我解决了

var text = "This is just Rohit.";
var myName = "Rohit";
var hits = [];
for (var i = 0; i < text.length; i++)
    {
        if(text[i] === myName[0] )
        {
            for(var j = i; j < (myName.length+i); j++)
            {
                hits.push(text[j]);
            }; 
        };
    };

hits;

您需要获取数组还是只查找您的名称?也许这可以帮助你:这只是罗希特。。indexOfRohit@Lends这看起来/听起来像是一个家庭作业问题@goldensquare您的内部for循环再次从0开始,您不应该从j=i开始吗?嗯,我明白您的意思,但您有没有研究过?一次只能获取一个结果,然后可以相应地剪切字符串。为什么不使用拆分方法将短语拆分为单词?var text=这只是Rohit。;arr=text.split//arr=['This'、'is'、'just'、'Rohit']另外,请更好地定义您希望您的程序执行的操作。通过比较,每次在示例中看到首字母大写字母R时,即使该单词不是您想要的,它也会进入内部。更新了它,现在试一试。当第二个“for”循环到达字符串+myName.length.Last update中的当前点时,应该停止。不过,您可能应该自己想办法完成此操作:这不是数组的工作方式,您已经询问了如何推送,我将让您自行决定如何将数组连接到字符串中。这句话本身应该给你你所需要的。@Goldensquare我认为第二部分应该有帮助!如果要使用form,应该删除for和条件块周围的分号。此外,一般认为,接受别人的答案,然后稍加修改,然后将其作为自己的答案发布,是不道德的行为。嘿,我自己发现了这个错误。我不是说你的答案错了。但这正是我想要的方式。公平地说,你自己并没有发现这个bug,你请了一群人帮你解决它,他们显然比你写javascript的时间长得多,所以接受他们的建议并理解正在发生的事情通常是好的做法。我正在学习javascript。我不能一下子学会所有新的关键词。只是好奇,点击仍然是一个数组,所以它不会是Rohit,你是如何处理的?