मैं एक मूवी वेबसाइट बना रहा हूं और मूवी आईडी के साथ, मुझे मूवी के बारे में बहुत सारी जानकारी मिलती है जिसे मैं HTML के रूप में प्रदर्शित कर सकता हूं। जब मैं एक विशिष्ट फिल्म के लिए वीडियो प्राप्त करने जाता हूं, हालांकि यह कई सरणी आइटम देता है जिसमें प्रत्येक में type="" नामक एक आइटम होता है, जहां यह फीचरेट, क्लिप या ट्रेलर के बराबर हो सकता है। मैं केवल type="Trailer" के साथ सरणी आइटम कैसे प्रिंट कर सकता हूं।

451048 की आईडी वाली मूवी प्राप्त करने के लिए जावास्क्रिप्ट कोड यहां दिया गया है:

 axios
       .get(
           "https://api.themoviedb.org/3/movie/" + movieId + "/videos?api_key=1350e4528ff8559ef2b0fa6679f97d84&language=en-US"
       )
       .then((response) => {
           console.log(response);
           //puts the array of movies into the variable
           let videos = response.data.results;
           let output = "";
           $.each(videos, (index, video) => {
               output += `
                  <div class="col-md-4">
                    <div class="well text-center">
                        <iframe width="420" height="315"
                            src="https://www.youtube.com/embed/${video.key}">
                            <h5>${video.type}</h5>
                        </iframe>
                    </div>
                  </div>
                `;
           });
           //prints the movies on the div with the class movies
           $("#videos").html(output);
       })
       .catch((err) => {
           console.log(err);
       });

और यह कंसोल लॉग है:

{data: {…}, status: 200, statusText: "", headers: {…}, config: {…}, …}
config: {url: "https://api.themoviedb.org/3/movie/451048/videos?a…y=1350e4528ff8559ef2b0fa6679f97d84&language=en-US", method: "get", headers: {…}, transformRequest: Array(1), transformResponse: Array(1), …}
data:
id: 451048
results: Array(7)
 0:
  id: "60e83f52b76cbb00461e9440"
  iso_639_1: "en"
  iso_3166_1: "US"
  key: "aYSy8guUUV0"
  name: "Jungle Cruise Featurette - Big Adventure (2021) | Movieclips Trailers"
  official: false
  published_at: "2021-07-07T17:51:17.000Z"
  site: "YouTube"
  size: 1080
  type: "Featurette"
[[Prototype]]: Object
 1:
  id: "60e62f666bdec3004615a7b2"
  iso_639_1: "en"
  iso_3166_1: "US"
  key: "W1vKz21UvX4"
  name: "Disney’s Jungle Cruise | July 30"
  official: true
  published_at: "2021-07-01T21:22:30.000Z"
  site: "YouTube"
  size: 1080
  type: "Trailer"
  [[Prototype]]: Object

जैसा कि आप देख सकते हैं, मैं केवल let movies = response.data.results; के उपरोक्त जावास्क्रिप्ट से कंसोल डेटा को कंसोल सरणी बनाना चाहता हूं जिसमें type="Trailer"

0
Ant 29 अगस्त 2021, 04:53

2 जवाब

सबसे बढ़िया उत्तर

https://stackoverflow.com/users/294949/danh ने सही उत्तर पर टिप्पणी की (मुझे नहीं पता कि कैसे हाइलाइट किया जाए) उनकी टिप्पणी क्योंकि मैं स्टैक ओवरफ्लो में नया हूं) जो था:

let videos = response.data.results.filter(m => m.type === "Trailer");

सुनिश्चित नहीं है कि कोड में m क्या है (यह बहुत अच्छा होगा यदि कोई मुझे इसे समझा सके)

2
Ant 29 अगस्त 2021, 05:23

आप JSON के माध्यम से पार करने में सहायता के लिए कुंजियों का उपयोग कर सकते हैं।

for(int i =0;i < response.data.results.length;i++){

if(response.data.results[i]["type"] === "Trailer"){

console.log(response.data.results[i]);

}

}
1
Dynamo432 29 अगस्त 2021, 05:17