मैं जावास्क्रिप्ट का उपयोग करके सरणी की संरचना को कैसे देख सकता हूं alert()?
console.debugवास्तव में बेहतर काम करेगा।
मैं जावास्क्रिप्ट का उपयोग करके सरणी की संरचना को कैसे देख सकता हूं alert()?
console.debugवास्तव में बेहतर काम करेगा।
जवाबों:
एक बहुत ही मूल दृष्टिकोण है alert(arrayObj.join('\n')), जो प्रत्येक सरणी तत्व को एक पंक्ति में प्रदर्शित करेगा।
alert(myArray.join('\n'));
EDIT: फ़ायरफ़ॉक्स और गूगल क्रोम में अब बिल्ट-इन JSONऑब्जेक्ट है, इसलिए आप alert(JSON.stringify(myArray))बिना jQuery प्लगइन का उपयोग किए बिना कह सकते हैं । यह जावास्क्रिप्ट भाषा युक्ति का हिस्सा नहीं है, इसलिए आपको JSONसभी ब्राउज़रों में मौजूद वस्तु पर भरोसा नहीं करना चाहिए , लेकिन डिबगिंग उद्देश्यों के लिए अविश्वसनीय रूप से उपयोगी है।
मैं jQuery-json प्लगइन का उपयोग इस प्रकार करता हूं :
alert( $.toJSON(myArray) );
यह सरणी को एक प्रारूप में प्रिंट करता है जैसे
[5, 6, 7, 11]
हालाँकि, आपके जावास्क्रिप्ट कोड को डीबग करने के लिए, मैं अत्यधिक अनुशंसा करता हूं कि Firebug यह वास्तव में एक जावास्क्रिप्ट कंसोल के साथ आता है, इसलिए आप किसी भी पेज के लिए जावास्क्रिप्ट कोड टाइप कर सकते हैं और परिणाम देख सकते हैं। सरणियों जैसी चीजें पहले से ही ऊपर उपयोग किए गए मानव-पठनीय रूप में मुद्रित हैं।
फायरबग में एक डीबगर भी है, साथ ही आपके HTML और CSS को देखने और डीबग करने में आपकी मदद के लिए स्क्रीन भी है।
नीचे दिए गए फ़ंक्शन के लिए अपना js ऐरे पास करें और यह php print_r () फ़ंक्शन के समान होगा
alert(print_r(your array)); //call it like this
function print_r(arr,level) {
var dumped_text = "";
if(!level) level = 0;
//The padding given at the beginning of the line.
var level_padding = "";
for(var j=0;j<level+1;j++) level_padding += " ";
if(typeof(arr) == 'object') { //Array/Hashes/Objects
for(var item in arr) {
var value = arr[item];
if(typeof(value) == 'object') { //If it is an array,
dumped_text += level_padding + "'" + item + "' ...\n";
dumped_text += print_r(value,level+1);
} else {
dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
}
}
} else { //Stings/Chars/Numbers etc.
dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
}
return dumped_text;
}
आप उपयोग कर सकते हैं alert(arrayObj.toSource());
यदि यह डिबगिंग उद्देश्यों के लिए है, मैं तुम्हें इस तरह के रूप एक JavaScript डीबगर का उपयोग की सलाह देंगे Firebug । यह आपको सारणी प्रविष्टियों को संशोधित करने और कोड के माध्यम से कदम बढ़ाने सहित सरणियों की पूरी सामग्री और बहुत कुछ देखने देगा।
यदि आप जो चाहते हैं, वह एक अलर्ट () ऑब्जेक्ट्स की एक सरणी के साथ दिखाना है, तो मैं आपको एक साधारण अलर्ट (MyArray) के साथ ऑब्जेक्ट (toString) विधि में परिभाषित करने के लिए फिर से तैयार करता हूं; सरणी की पूरी सामग्री को अलर्ट में दिखाया जाएगा।
यहाँ एक उदाहरण है:
//-------------------------------------------------------------------
// Defininf the Point object
function Point(CoordenadaX, CoordenadaY) {
// Sets the point coordinates depending on the parameters defined
switch (arguments.length) {
case 0:
this.x = null;
this.y = null;
break;
case 1:
this.x = CoordenadaX;
this.y = null;
break;
case 2:
this.x = CoordenadaX;
this.y = CoordenadaY;
break;
}
// This adds the toString Method to the point object so the
// point can be printed using alert();
this.toString = function() {
return " (" + this.x + "," + this.y + ") ";
};
}
यदि आपके पास अंक हैं तो:
var MyArray = [];
MyArray.push ( new Point(5,6) );
MyArray.push ( new Point(7,9) );
आप बस कॉलिंग प्रिंट कर सकते हैं:
alert(MyArray);
उम्मीद है की यह मदद करेगा!
आप एक फ़ंक्शन लिख सकते हैं जो इस सरणी को स्ट्रिंग के रूप में रूपांतरित और प्रारूपित करेगा। इससे भी बेहतर: अलर्ट के बजाय डीबगिंग के लिए फायरबग का उपयोग करें ।
पठनीयता उद्देश्यों के लिए आप इसका उपयोग कर सकते हैं:
alert(JSON.stringify(someArrayOrObj, '', 2));
JSON.stringify () के बारे में अधिक ।
उदाहरण:
let user = {
name: "John",
age: 30,
roles: {
isAdmin: false,
isEditor: true
}
};
alert(JSON.stringify(user, "", 2));
/* Result:
{
"name": "John",
"age": 30,
"roles": {
"isAdmin": false,
"isEditor": true
}
}
*/
alert($("#form_id").serialize());
javascriptकिया गया है जो कहता है कि "जब तक एक रूपरेखा / पुस्तकालय के लिए एक टैग भी शामिल नहीं होता है, शुद्ध जावास्क्रिप्ट उत्तर अपेक्षित होता है"। यहां तक कि अगर यह मामला नहीं था ... सवाल एक सरणी के बारे में पूछ रहा है, एक HTML फॉर्म नहीं।
console.log- यह जावास्क्रिप्ट ऑब्जेक्ट्स के आत्मनिरीक्षण के लिए बहुत अच्छा है।