2017-08-30 17 views
0

私はnpmscraperを使用しています。私は以下の2つのほぼ同じ機能を持っています。基本的に、キーと値のペア形式で1つの配列に返す結果を結合したいのです。文字列の配列からキーと値のペアの配列を取得するまで

第1の機能戻り[ 'オレンジ'、 'リンゴ'、 'ブドウ']

第2の機能戻り[ 'www.orange.com'、 'www.apple.com'、 'www.grape.com 「]


を(非常に簡略化された)foo.comから掻き取るためのサンプルデータ###

<p>orange <a href="www.orange.com">click here</a></p> 
<p>apple <a href="www.apple.com">click here</a></p> 
<p>grape <a href="www.graphe.com">click here</a></p> 

// Begin node app 
var scraperjs = require('scraperjs'); 

// first function 
    scraperjs.StaticScraper.create('https://foo.com/') 
    .scrape(function($) { 
     return $(".entry p").map(function() { 
       return = $(this).text(); 
     }).get(); 
    }) 
    .then(function(fruit) { 
     // after some cleaning up... 
     console.log(fruit) 
     //returns ['orange','apple','grape'] 
    }) 

----------------------- 
// second function gets the links 
scraperjs.StaticScraper.create('https://foo.com/') 
    .scrape(function($) { 
     return $(".entry a").map(function() { 
       return = $(this).attr('href'); 
     }).get(); 
    }) 
    .then(function(links) { 
     console.log(links) 
     // returns ['www.orange.com','www.apple.com','www.grape.com'] 
    }) 
私が好きな何

(EDITEDが)のようなものです:

ので
[{fruit: 'orange'; link 'www.orange.com'},{fruit: 'apple'; link 'www.apple.com'}] 
+0

'私が好きなことのようなものですがあるでしょう'これは有効なjavascript構造体ではありません...' [] 'が' {} '...であることを意味しましたか?' return = '???本当に?現在の出力を実際に生成するコードを要求していますか? –

答えて

1

、次の2つのアレイ

var array1 = ['orange','apple','grape']; 
 
var array2 = ['www.orange.com','www.apple.com','www.grape.com'] 
 

 
// combining them to create an object 
 

 
var result = array1.reduce(function(obj, key, index) { 
 
    obj[key] = array2[index]; 
 
    return obj; 
 
}, {}); 
 
console.log(result);

関連する問題