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

JavaScriptでネストされたJSONオブジェクトからキーの値を取得する


このようなネストされたJSONオブジェクトがあるとします-

const obj = {
   "prop": [
      {
         "key": "FOO",
         "value": "Foo is wonderfull, foo is great"
      },
      {
         "key": "BAR",
         "value": "Bar is bad, really bad"
      }
   ]
};

最初の引数として1つのオブジェクトを取り、2番目の引数としてキー文字列を受け取るJavaScript関数を作成する必要があります。

次に、関数は、その特定のキープロパティが属する「value」プロパティの値を返す必要があります。

このためのコードは-

になります
const obj = {
   "prop": [
      {
         "key": "FOO",
         "value": "Foo is wonderfull, foo is great"
      },
      {
         "key": "BAR",
         "value": "Bar is bad, really bad"
      }
   ]
};
const findByKey = (obj, key) => {
   const arr = obj['prop'];
   if(arr.length){
      const result = arr.filter(el => {
         return el['key'] === key;
      });
      if(result && result.length){
         return result[0].value;
      }
      else{
         return '';
      }
   }
}
console.log(findByKey(obj, 'BAR'));

出力

そして、コンソールの出力は-

になります
Bar is bad, really bad

  1. javascriptの1つのキーを除いてjsオブジェクトのクローンを作成するにはどうすればよいですか?

    1つのキーを除いてオブジェクトのクローンを作成する最も簡単な方法は、オブジェクト全体のクローンを作成してから、不要なプロパティを削除することです。ただし、クローニングには2つのタイプがあります- ディープクローン 浅いクローン 浅いコピーは可能な限り複製しません。コレクションの浅いコピーは、要素ではなく、コレクション構造のコピーです。浅いコピーで、2つのコレクションが個々の要素を共有するようになりました。 例 let innerObj = {    a: 'b',    c: 'd' } let obj = { &n

  2. JavaScript-URLからGETパラメータの値を知る

    JavaScriptのURLからGETパラメータの値を知るためのコードは次のとおりです- 例 <!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