簡體   English   中英

如何在 Javascript 的數組中返回僅包含某個 object 的對象數組?

[英]How do I return an array of objects that only contains a certain object in an array for Javascript?

我有一個稱為演員的 object 數組:

const actors =  [{
   "name": "John Doe",
   "rating": 1234,
   "alternative_name": null,
   "objectID": "551486300"
},
{
   "name": "Jane Doe",
   "rating": 4321,
   "alternative_name": "Monica Anna Maria Bellucci",
   "objectID": "551486310"
}];

我特別想知道演員的名字和收視率。 我嘗試通過制作一個名為 actorNameRating 的 function 來獲得它,但我的代碼不起作用。

const nameAndRating = function() {

    const actorName = nameAndRating.filter(name);
    return actorName;

    const actorRating = nameAndRating.filter(rating);
    return actorRating;
 };

返回后的任何事情都不會執行,您可以將兩個值作為一個字符串返回,然后將其分開,例如:

const nameAndRating = function() {
    const actorName = nameAndRating.filter(name);
    const actorRating = nameAndRating.filter(rating);
    return actorName+","+actorRating;
 };

或您認為更適合您使用的任何其他方式

您可以通過map和 function 並僅返回名稱和評級:

 const actors = [{ "name": "John Doe", "rating": 1234, "alternative_name": null, "objectID": "551486300" }, { "name": "Jane Doe", "rating": 4321, "alternative_name": "Monica Anna Maria Bellucci", "objectID": "551486310" }]; const nameAndRating = function() { return actors.map(actor => ({ name: actor.name, rating: actor.rating })) }; console.log(nameAndRating())

您可以為此簡單地使用Array.map

 const actors = [{ "name": "John Doe", "rating": 1234, "alternative_name": null, "objectID": "551486300" }, { "name": "Jane Doe", "rating": 4321, "alternative_name": "Monica Anna Maria Bellucci", "objectID": "551486310" }]; let result = actors.map(({name, rating}) => ({name, rating})); console.log(result);

或者,如果您希望它們在兩個單獨的 arrays 中,則可以使用通用 function 來返回給定道具的值數組:

 const actors = [{ "name": "John Doe", "rating": 1234, "alternative_name": null, "objectID": "551486300" }, { "name": "Jane Doe", "rating": 4321, "alternative_name": "Monica Anna Maria Bellucci", "objectID": "551486310" }]; let getPropValues = (arr, prop) => arr.map(o => o[prop]); console.log("Names = ",getPropValues(actors, "name")); console.log("Ratings = ",getPropValues(actors, "rating"));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM