दिलचस्प पोस्ट
प्लग इन किए बिना फोनगैप के साथ Google Analytics का उपयोग कैसे करें? एंड्रॉइड में एक दृश्य घूम रहा है एनजी-क्लिक का उपयोग करके कोणीय जेएस में कक्षाएं जोड़ना और निकालना जावा डिफ़ॉल्ट स्टैक आकार मैटलब में लम्बाई एन्कोडिंग चलाएं बिटटिव पारी ऑपरेटर्स हस्ताक्षरित और अहस्ताक्षरित क्या यह संभव क्वेरी डेटा है जो निर्दिष्ट स्थिति के बराबर नहीं है? PHP में दो तिथियों के बीच दिन कैसे गिनें? htaccess अनुप्रेषित करने के लिए गैर www www दोनों http और https PHP – छवि के भीतर रंग बदलें अभिव्यक्ति ___ की जांच के बाद यह बदल गया है क्या आकार (बूल) परिभाषित है? चरित्र का आकार ('ए') सी / सी ++ में कैसे MFMailComposeViewController दिखाए बिना iPhone अनुप्रयोग से मेल भेजने के लिए? वसंत सुरक्षा के साथ पकड़ने / सत्र का समय समाप्त

जावास्क्रिप्ट सरणी से यादृच्छिक वस्तु प्राप्त करें

var items = Array(523,3452,334,31,...5346); 

आइटम से मुझे रैंडम आइटम कैसे प्राप्त हो सकता है?

Solutions Collecting From Web of "जावास्क्रिप्ट सरणी से यादृच्छिक वस्तु प्राप्त करें"

 var item = items[Math.floor(Math.random()*items.length)]; 

यदि आप वास्तव में इस समस्या को हल करने के लिए jQuery का उपयोग करना चाहिए :

 (function($) { $.rand = function(arg) { if ($.isArray(arg)) { return arg[$.rand(arg.length)]; } else if (typeof arg === "number") { return Math.floor(Math.random() * arg); } else { return 4; // chosen by fair dice roll } }; })(jQuery); var items = [523, 3452, 334, 31, ..., 5346]; var item = jQuery.rand(items); 

यह प्लग इन एक यादृच्छिक तत्व लौटाएगा यदि कोई सरणी दी गई हो, या [0 .. n से एक मान] एक संख्या दी, या कुछ और दिया, एक गारंटीकृत यादृच्छिक मूल्य!

अतिरिक्त मज़े के लिए, सरणी की वापसी सरणी की लंबाई के आधार पर फ़ंक्शन को फिर से कॉल करके उत्पन्न होती है 🙂

http://jsfiddle.net/2eyQX/ पर कार्य डेमो

अंडरस्कोर का उपयोग करें (या lo'dash :)):

 var randomArray = [ '#cc0000','#00cc00', '#0000cc' ]; // use _.sample var randomElement = _.sample(randomArray); // manually use _.random var randomElement = randomArray[_.random(randomArray.length-1)]; 

या पूरी सरणी को फेरबदल करने के लिए:

 // use underscore's shuffle function var firstRandomElement = _.shuffle(randomArray)[0]; 
 var random = items[Math.floor(Math.random()*items.length)] 

1. समाधान: ऐरे प्रोटोटाइप को परिभाषित करें

 Array.prototype.random = function () { return this[Math.floor((Math.random()*this.length))]; } 

वह इनलाइन सरणियों पर काम करेगा

 [2,3,5].random() 

और निश्चित रूप से पूर्वनिर्धारित सरणियों

 list = [2,3,5] list.random() 

2. समाधान: कस्टम फ़ंक्शन परिभाषित करता है जो सूची को स्वीकार करता है और रिटर्न तत्व

 get_random = function (list) { return list[Math.floor((Math.random()*list.length))]; } get_random([2,3,5]) 

jQuery जावास्क्रिप्ट है! यह सिर्फ एक जावास्क्रिप्ट फ़्रेमवर्क है तो एक यादृच्छिक वस्तु खोजने के लिए, बस सादे पुराने जावास्क्रिप्ट का उपयोग करें, उदाहरण के लिए,

 var randomItem = items[Math.floor(Math.random()*items.length)] 
 var rndval=items[Math.floor(Math.random()*items.length)]; 

यहाँ एक और तरीका है:

 function rand(items) { return items[~~(items.length * Math.random())]; } 
 var items = Array(523,3452,334,31,...5346); function rand(min, max) { var offset = min; var range = (max - min) + 1; var randomNumber = Math.floor( Math.random() * range) + offset; return randomNumber; } randomNumber = rand(0, items.length - 1); randomItem = items[randomNumber]; 

क्रेडिट:

जावास्क्रिप्ट समारोह: यादृच्छिक संख्या जनरेटर

 // 1. Random shuffle items items.sort(function() {return 0.5 - Math.random()}) // 2. Get first item var item = items[0] 

छोटा:

 var item = items.sort(function() {return 0.5 - Math.random()})[0]; 

यदि आप node.js का उपयोग कर रहे हैं, तो आप अद्वितीय-यादृच्छिक-सरणी का उपयोग कर सकते हैं। यह केवल एक सरणी से यादृच्छिक कुछ उठाता है

एक वैकल्पिक तरीका ऐरे प्रोटोटाइप के लिए एक विधि जोड़ना होगा:

  Array.prototype.random = function (length) { return this[Math.floor((Math.random()*length))]; } var teams = ['patriots', 'colts', 'jets', 'texans', 'ravens', 'broncos'] var chosen_team = teams.random(teams.length) alert(chosen_team) 
 Array.prototype.random = function () { return this[Math.random() * this.length | 0]; }; Array.prototype.pick = function (i) { return this.splice(i >= 0 ? i : Math.random() * this.length | 0, 1)[0]; }; Array.prototype.shuffle = function () { for (var i = this.length; i > 0; --i) this.push(this.splice(Math.random() * i | 0, 1)[0]); return this; };