Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

IDがJavaScriptのオブジェクトの別の配列からのIDと一致するかどうかにかかわらず、配列true /falseにオブジェクトプロパティを設定しますか?


配列true/falseにオブジェクトプロパティを設定するには、IDがオブジェクトの別の配列のIDと一致するかどうかに関係なく、map()とともにreduce()を使用できます。

以下はコードです-

let
firstDetails=[{"studentId":101,"studentName":"John"},{"studentI d":102,"studentName":"David"},{"studentId":103,"studentName":"B ob"}]
let
secondDetails=[{"studentId":101,"studentName":"Robert"},{"stude ntId":109,"studentName":"Mike"},{"studentId":103,"studentName": "Adam"}]
const obj = secondDetails.reduce((o, v) => (o[v.studentId] = true, o), {})
const output = firstDetails.map(v => ({ ...v, matchingResult: obj[v.studentId] || false}))
console.log(output)

上記のプログラムを実行するには、以下のコマンドを使用する必要があります-

node fileName.js.

ここで、私のファイル名はdemo316.jsです。

出力

これにより、次の出力が生成されます-

PS C:\Users\Amit\javascript-code> node demo316.js
[
   { studentId: 101, studentName: 'John', matchingResult: true },
   { studentId: 102, studentName: 'David', matchingResult: false },
   { studentId: 103, studentName: 'Bob', matchingResult: true }
]

  1. 柔軟なアイテムをJavaScriptでラップするかどうかを設定しますか?

    flexWrapを使用する JavaScriptのプロパティは、柔軟なアイテムをJavaScriptでラップするかどうかを設定します。 例 次のコードを実行してflexWrapを実装してみてください。 JavaScriptのプロパティ- <!DOCTYPE html> <html>    <head>       <style>          #box {            

  2. JavaScriptを使用してオブジェクトを単一のオブジェクト配列にマージする方法は?

    以下は、オブジェクトを単一のオブジェクト配列にマージするコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>