我能够得到的文本结果我怎么能把他们推入arrays

我能够获得所有的联系电话号码,但结果是以文本格式( 9632427326 )。

如何将它们存储到array["9632427326","8045318762"] 。 我的意思是类似推。

我的DOM是:

 <span style="font-weight:bold;" class="number"> <span id="mob0">0 </span>8045318762 <script type="text/javascript"> whichVer('ver0'); </script> </span> <span style="font-weight:bold;" class="number"> <span id="mob1">1 </span>9632427326 <script type="text/javascript"> whichVer('ver1'); </script> </span> **I am using something like this:** 

它只返回文本我想要数组(类似于推)。

 alert($('.number').contents().filter(function() { return this.nodeType == 3; }).text()); 

请帮助,提前谢谢。

你可以使用map()get()并返回数组数组。

 var data = $('.number').contents().map(function() { if (this.nodeType == 3 && this.textContent.trim() != '') return Number(this.textContent); }).get(); console.log(data) 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <span style="font-weight:bold;" class="number"> <span id="mob0">0 </span>8045318762 </span> <span style="font-weight:bold;" class="number"> <span id="mob1">1 </span>9632427326 </span> 

你可以使用正则expression式来过滤掉手机没有文字。 喜欢这个 :

  function getMobArr(){ var arr=[]; $.each($(".number"),function(index,value){ //filter text with regex for mobile 10 digit no. var match=$(value).text().match(/([\d]{10})/i); arr.push(match[1]); }) return arr; } 

输出:

[“8045318762”,“9632427326”]