গুগল ক্রোমে ডিবাগ করার সময় স্ক্রিপ্ট কার্যকর করা কীভাবে শেষ করবেন?


210

গুগল ক্রোম ডিবাগারে জাভাস্ক্রিপ্ট কোডের মাধ্যমে পদক্ষেপ নেওয়ার সময়, আমি যদি চালিয়ে যেতে না চাই তবে আমি কীভাবে স্ক্রিপ্ট সম্পাদন বন্ধ করব? আমি খুঁজে পেলাম একমাত্র উপায় ব্রাউজার উইন্ডোটি বন্ধ করে দেওয়া closing

"এই পৃষ্ঠাটি পুনরায় লোড করুন" টিপতে বাকী কোডটি চালিত হয় এবং এমন কি ফর্মটি জমা দেয় যেন F8 "চালিয়ে যান" টিপুন।

আপডেট :

স্ক্রিপ্ট বিরতি অবস্থায় F5 টি চাপুন (রিফ্রেশ করুন):

  • গুগল ক্রোম (v22) স্ক্রিপ্ট চালায়। যদি স্ক্রিপ্টটি HTTP অনুরোধ জমা দেয় তবে সেই অনুরোধের জন্য HTTP প্রতিক্রিয়া প্রদর্শিত হবে। মূল পৃষ্ঠাটি রিফ্রেশ হয় না।
  • আইই 9 কেবল হিমশীতল। তবে আইই-র একটি বিকল্প রয়েছে "ডিবাগিং বন্ধ করুন" যা চাপলে (আপনি যদি আগে এফ 5 টিপেন না) চাপিয়ে দেওয়া হয়, তখন স্ক্রিপ্টটি ডিবাগারের বাইরে চালিয়ে যাওয়া চালিয়ে যায়।
  • ফায়ারব্যাগ ক্রোমের সাথে অভিন্ন আচরণ করে।

বন্ধ এবং তারপরে আবার ব্রাউজার উইন্ডোটি খোলা রাখা সর্বদা পরবর্তী সহজ উপায় নয় কারণ এটি ব্রাউজার সেশন স্থিতিকে মেরে ফেলবে এবং এটি গুরুত্বপূর্ণ হতে পারে। আপনার সমস্ত ব্রেকপয়েন্টগুলিও হারিয়ে গেছে।

আপডেট (জানুয়ারী 2014) :

ডিবাগ করার সময় রিফ্রেশ করুন:

  • ক্রোম ভি 31: স্ক্রিপ্টগুলি চালাতে দেয় এবং আরও ব্রেকপয়েন্টগুলিতে থামিয়ে দেয় (তবে এজ্যাক্স অনুরোধ জমা দেয় না), তারপরে রিফ্রেশ করে।
  • আইই 11: রিফ্রেশ কিছুই করে না, তবে আপনি চালিয়ে যেতে F5 টিপতে পারেন।
  • ফায়ারফক্স ভি 26: স্ক্রিপ্টগুলি চালাতে দেয় কিন্তু পরবর্তী ব্রেকপয়েন্টগুলিতে থামে না, এজাক্স অনুরোধ জমা দেয়, তারপরে রিফ্রেশ করে।

ধরণের অগ্রগতি!

ডিবাগ করার সময় একই পৃষ্ঠায় নেভিগেট করুন:

  • ক্রোম ভি 31: রিফ্রেশের মতো।
  • আইই ১১: স্ক্রিপ্টগুলি সমাপ্ত করা হয়, নতুন ব্রাউজার সেশনটি শুরু হয় (আবার বন্ধ হয়ে যাওয়ার ও খোলার মতো)।
  • ফায়ারফক্স ভি 26: কিছুই হয় না।

এছাড়াও জুয়াকাল একটি কার্যকর workaround প্রস্তাব। উদাহরণস্বরূপ, আপনি যদি jQuery ব্যবহার করে থাকেন তবে কোনও jQuery পদ্ধতির মুখোমুখি হওয়ার পরে কনসোল থেকে মুছে ফেলা execution চালানো বন্ধ হয়ে যাবে। আমি উপরের সমস্ত ব্রাউজারে এটি পরীক্ষা করেছি এবং এটি কাজ করছে তা নিশ্চিত করতে পারি।

আপডেট (মার্চ 2015) :

অবশেষে, 2 বছরেরও বেশি সময় ধরে এবং প্রায় 10K মতামত পর সঠিক উত্তর আলেকজান্ডার কে Google Chrome এর দ্বারা হয়েছে দেওয়া হয়েছিল তার নিজস্ব টাস্ক ম্যানেজার যা একটি ট্যাব প্রক্রিয়া হত্যা করতে পারে ছাড়া ট্যাব নিজেই বন্ধ করে সব ব্রেকপয়েন্ট এবং অন্যান্য উপাদান অক্ষত রাখা।

এমনকি ব্রাউজারস্ট্যাক.কম.কে এটি ক্রোম ভি 22 এ পরীক্ষা করার জন্য আমি গিয়েছিলাম এবং দেখতে পেয়েছি যে এটি সেই সময়েও এইভাবে কাজ করছে।

আইই বা ফায়ারফক্সে ডিবাগ করার সময় জুয়াকালার কার্যকারিতা এখনও কার্যকর।

আপডেট (জানুয়ারী 2019) :

শেষ পর্যন্ত Chrome ডি সরঞ্জামগুলি স্ক্রিপ্টের সম্পাদন বন্ধ করার জন্য একটি সঠিক উপায় যুক্ত করেছে যা দুর্দান্ত (যদিও এটি কিছুটা আড়াল)। বিশদ জন্য জেমস জেনেটস এর উত্তর দেখুন।


12
debugger;ডিভাইস কনসোলে টাইপ করুন এবং এটি অবিলম্বে জিনিসগুলিকে ডিবাগারে ফেলে দেবে এবং স্ক্রিপ্টটি বন্ধ করে দেবে।
জেক

3
জেমস জেনেটসের উত্তরটি 2019 এ আরও ভাল সমাধান বলে মনে হচ্ছে
স্পিকলিন

1
সকলেই স্ক্রিপ্ট বন্ধ করার কথা বলছেন কেন? এটি আসছে "নিম্নলিখিত / উত্সাহযুক্ত" কোডটি সমাপ্ত / ভাঙ্গার বিষয়ে।
আন্দ্রে এলরিকো

উত্তর:


188

ক্রোমে, "টাস্ক ম্যানেজার" রয়েছে, এটি মাধ্যমে Shift+ ESCবা মাধ্যমে অ্যাক্সেসযোগ্য

মেনু → আরও সরঞ্জাম → টাস্ক ম্যানেজার

আপনি আপনার পৃষ্ঠার কাজটি নির্বাচন করতে পারেন এবং "শেষ প্রক্রিয়া" বোতাম টিপে এটি শেষ করতে পারেন।


4
chrome 48এটি কেবলমাত্র ডিভাইসটি বন্ধ করে দেবে, এবং এটি পুনরায় খোলার পরে, আপনি প্রোগ্রামটি এখনও চলমান দেখতে পাবেন ( tried setInterval())
আবদেলৌব

11
আমি "আরও সরঞ্জাম" এর অধীনে "টাস্ক ম্যানেজার" দেখতে পাচ্ছি না এবং শিফট + এসসি কিছুই করে না ... (ক্রোম 50, ওএসএক্স) শিফ্ট + ইসি ক্রোম / উইন্ডোজ এর অধীনে কাজ করে যদিও ...
মাইকেল

2
বাহ — আমি এটি এতদিন চেয়েছিলাম, এবং এটি বছরের পর বছর ধরে! আমি সারা বছর দেখেছি এটি সবচেয়ে সহায়ক স্ট্যাকওভারফ্লো উত্তর!
মাইকেল শ্যাপার

4
ম্যাকিনটোস (ক্রোম ভি। V.6) এ এই বিকল্পটি "উইন্ডো" মেনুতে তৃতীয় গোষ্ঠীতে প্রদর্শিত হবে। কোনও কীবোর্ড শর্টকাট স্পষ্ট হয় না।
অ্যাপোলো

2
এটি ট্যাবটি মেরে ফেলবে
htafoya

105

এর মতো এপ্রিল 2018, আপনাকে Chrome এ অসীম loops বন্ধ করতে পারবেন :

  1. বিকাশকারী সরঞ্জামগুলিতে উত্স প্যানেলটি খুলুন ( Ctrl+ Shift+ I**)।
  2. স্ক্রিপ্টের প্রয়োগটি বিরতি দিতে বিরতি বোতামটি ক্লিক করুন ।

শর্টকাট কীগুলিও নোট করুন: F8এবংCtrl +\

এখানে চিত্র বর্ণনা লিখুন


সেই ইউআই তে এমন লুকানো রত্ন।
নরবার্ট

উত্তরদাতার মহাবিশ্বের গোপন বিষয়গুলির একটি চাবি রয়েছে।
স্যাম

শর্টকাটটি বিশেষত কার্যকর যখন আপনার অবিরাম চলমান স্ক্রিপ্ট থাকে যখন আপনি কনসোলটি পরীক্ষা করতে থামাতে চান। ধন্যবাদ।
আলেক্সি

@ ড্যানডাসকলেস্কু আমার কাছে ক্রোম 80.0.3987.149 রয়েছে এবং এটি একই দেখাচ্ছে
জেমস জেনেটস

হতে পারে আমরা মৃত্যুদন্ড কার্যকর করার বিভিন্ন অবস্থায় বাটনটি দেখছি? খনিটি হ'ল আমি bodyএখানে উপাদানটি বাছাই করে SO তে "ব্রেক অন -> সাবট্রি পরিবর্তন" সেট করেছিলাম , তারপরে যেখানেই ক্লিক করেছি। বোতামটি আমার পোস্ট হওয়া স্ক্রিনশটের মতো দেখাচ্ছে।
ড্যান ড্যাসকলেসকু

37

স্ক্রিপ্টটি বিরতি দেওয়া আপনি এটির একটি উপায়, বর্তমানে আপনার যেখানে থামানো হয়েছে সেখানে কোন কোড অনুসরণ করা হয়েছে তা দেখুন eg

var something = somethingElse.blah;

কনসোলে, নিম্নলিখিতটি করুন:

delete somethingElse;

তারপরে স্ক্রিপ্টটি প্লে করুন: এটি অ্যাক্সেস করার চেষ্টা করলে এটি মারাত্মক ত্রুটি ঘটায় somethingElse ঘটবে এবং স্ক্রিপ্টটি মারা যাবে। ভয়েলা, আপনি স্ক্রিপ্টটি শেষ করেছেন।

সম্পাদনা: মূলত, আমি একটি পরিবর্তনশীল মুছলাম। এটা যথেষ্ট ভাল না। আপনাকে জাভাস্ক্রিপ্ট কোনও সম্পত্তি অ্যাক্সেস করার চেষ্টা করে এমন কোনও ক্রিয়াকলাপ বা কোনও জিনিস মুছতে হবে।


3
you have to delete a function or an objectএমন বাজে হ্যাক! (ইউআইতে এটি সমস্ত বোতামকে মেরে ফেলার মতো সুন্দরভাবে ফিট করবে )
মার্স রবার্টসন

এটি বেশ বাজে, তবে আমি অন্য কোনওভাবে ভাবতে পারি না।
juacala

বছর পরে আমি একই প্রশ্নে ফিরে আসছি ... এবং আমি এটি বের করতে পারি না! এটি আরও জেনেরিক করার উপায় আছে?
মঙ্গল রবার্টসন

স্ক্রিপ্টের কার্যকারিতাটি কীভাবে শেষ করা যায় তা আপনি বুঝতে পারেন না? আমি সবসময় এটি করতে সক্ষম হয়েছি আপনার কি এমন উদাহরণ রয়েছে যা আপনাকে স্ক্রিপ্টটি এভাবে মারতে দেয় না?
juacala

1
@ হাশিম, আপনাকে ফাংশনের ভিতরে ব্রেক পয়েন্ট রাখতে সক্ষম হতে হবে। সুতরাং নিশ্চিত করুন যে ফাংশনটির অভ্যন্তরটি ফাংশন সংজ্ঞা থেকে পৃথক লাইনে রয়েছে। আপনার ক্ষেত্রে, আপনার কনসোলে একটি বার বিরতি দেওয়ার পরে "ডকুমেন্ট.জেটএলিমেন্টবাইআইডি ('দেখুন_ল্ডার') টাইপ করুন। এটি জাভাস্ক্রিপ্টে ব্রেক করার জন্য আপনার কাছে কিছু নেই বলেই এটি। দুর্ভাগ্যক্রমে, এটি এইচটিএমএলও পরিবর্তন করে। আপনি যদি কোডটি "var el = document.getElementById ('দেখুন_older')"; see n el.getEl ... "এ পরিবর্তন করতে পারেন তবে আপনি কেবল" এলটি মোছা "করতে পারেন; এবং এটি এটি বন্ধ করবে।
জুলাইকাল

12

2020 এপ্রিল আপডেট

ক্রোম 80 হিসাবে, বর্তমানের উত্তরগুলির কোনওটিই কাজ করে না। কোনও দৃশ্যমান "বিরতি" বোতাম নেই - স্টপ আইকনটি অ্যাক্সেস করতে আপনার "প্লে" বোতামটি দীর্ঘ-ক্লিক করতে হবে:

ক্রোম ডেভটুলগুলিতে স্ক্রিপ্ট সম্পাদন বন্ধ করুন


2
সৃষ্টিকর্তাকে ধন্যবাদ! ওপির প্রশ্নের আসল উত্তর।
ব্যবহারকারী 1023110

1
@ ইউজার 1023110: আমি aboutশ্বরের সম্পর্কে জানি না তবে আপনি স্বাগত জানিয়েছেন :)
ড্যান ড্যাসাকলেসকু

5

debuggerবিবৃতিটি ব্যবহার করার সময় আপনি যদি এটির মুখোমুখি হন ,

debugger;

... তারপরে আমি মনে করি জেএস রানটাইম ফলন বা পরবর্তী বিরতি পর্যন্ত পৃষ্ঠাটি চিরতরে চলতে থাকবে। ধরে নিই যে আপনি ব্রেক-অন-ত্রুটি মোডে রয়েছেন (বিরাম-আইকন টগল), আপনি নিশ্চিত করতে পারেন এর পরিবর্তে কিছু করার দ্বারা একটি বিরতি ঘটেছে:

debugger;throw 1;

বা হতে পারে একটি অস্তিত্ব ফাংশন কল:

debugger;z();

(অবশ্যই যদি আপনি ফাংশনগুলির মধ্য দিয়ে পদক্ষেপ নেওয়ার চেষ্টা করছেন তবে এটি কোনও কার্যকর হয় না, যদিও আপনি সম্ভবত একটিতে গতিশীলভাবে যুক্ত করতে পারেন throw 1 বাz() বা সোর্স প্যানেলে somesuch, Ctrl-এস সংরক্ষণ করতে, এবং তারপর Ctrl-R রিফ্রেশ করতে ... এই তবে একটি ব্রেকআপপয়েন্ট এড়িয়ে যেতে পারে তবে আপনি লুপ এ থাকলে কাজ করতে পারে)

আপনি যদি একটি লুপ করছেন এবং debuggerবিবৃতিটি আবার ট্রিগার করার প্রত্যাশা করছেন তবে আপনি কেবল throw 1পরিবর্তে টাইপ করতে পারেন ।

throw 1;

তারপরে আপনি যখন সিটিআরএল-আর মারবেন তখন পরের নিক্ষেপটি আঘাত হানবে এবং পৃষ্ঠাটি রিফ্রেশ হবে।

(ক্রোম ভি 38 এর সাথে পরীক্ষিত, প্রায় এপ্রিল 2017)


3

এখানে ভাল প্রশ্ন। আমি মনে করি আপনি স্ক্রিপ্টের কার্যকারিতা শেষ করতে পারবেন না। যদিও আমি এটির জন্য কখনও সন্ধান করিনি, আমি কর্মক্ষেত্রে দীর্ঘ সময় ধরে ক্রোম ডিবাগারটি ব্যবহার করছি। আমি আমার জাভাস্ক্রিপ্ট কোডে সাধারণত ব্রেকপয়েন্টগুলি সেট করি এবং তারপরে আমি যে কোডটি পছন্দ করি সেটির অংশটি ডিবাগ করি that যখন আমি এই কোডটি ডিবাগিং শেষ করি, তখন আমি সাধারণত বাকি প্রোগ্রামটি চালিত করি বা ব্রাউজারটি রিফ্রেশ করি।

আপনি যদি স্ক্রিপ্টের বাকী অংশটি সম্পাদন থেকে আটকাতে চান (উদাহরণস্বরূপ AJAX কলগুলি করা হচ্ছে বলে) কেবলমাত্র আপনি যা করতে পারেন তা হল অন-ফ্লাইয়ে কনসোলে থাকা কোডটি সরিয়ে ফেলা, এইভাবে সেই কলগুলি রোধ করা মৃত্যুদন্ড কার্যকর করা থেকে , তারপরে আপনি কোনও সমস্যা ছাড়াই অবশিষ্ট কোডটি কার্যকর করতে পারেন।

আশা করি এটা কাজে লাগবে!

PS: আমি নিম্নলিখিতগুলির মতো কিছু টিউটোরিয়াল / গাইডগুলিতে মৃত্যুদন্ড কার্যকর করার জন্য একটি বিকল্প অনুসন্ধান করার চেষ্টা করেছি, কিন্তু এটি খুঁজে পেল না। আমি আগেই বলেছি, সম্ভবত এরকম কোনও বিকল্প নেই।

http://www.codeproject.com/Articles/273129/Beginner-Guide-to-Page-and-Script-Debugging-with-C

http://www.nsbasic.com/app/tutorials/TT10.htm


আমি কি সাহায্য করেছি? দেখে মনে হচ্ছে এখানে একটি সমাপ্ত বিকল্প নেই, তবে নিম্নলিখিত কোডটি কার্যকর করা রোধ করার জন্য আপনি নীচের কোডটি আগে মন্তব্য করতে বা ক্রোম ডিবাগারের মধ্যে "লাইভ" কল করতে পারেন (এই পরবর্তী বিকল্পটি চালিয়ে যাওয়া বোতামটি তৈরি করবে) সমাপ্তির মতো আচরণ করুন)। আমি জানি তারা আদর্শ সমাধান নয়, তবে আমি মনে করি তারা সবচেয়ে গ্রহণযোগ্য। কোন মন্তব্য?
রোমান রোদ্রেগিজ-গিল

1
অনেক ক্ষেত্রে, কোডটি কার্যকর করা থেকে রোধ করা দরকার তা কল স্ট্যাক আপ (বর্তমান ফাংশন রিটার্নের পরে নিয়ন্ত্রণ পেতে পারে এমন ফাংশনগুলি)। অবশ্যই, আমি কল স্ট্যাক আপ করতে এবং ফাংশন সম্পাদনা করতে পারেন, এবং তারপরে সমস্ত ফাংশন সন্ধান করুন এবং সম্পাদনা করতে পারেন যা অবিচ্ছিন্নভাবে বলা যেতে পারে। আমি নিশ্চিত, ব্রাউজারের জন্য স্ক্রিপ্টটি দিয়ে কোনও পৃষ্ঠা পুনরায় সতেজ করার জন্য এটি অবশ্যই একটি তুচ্ছ জিনিস হতে হবে যদি পৃষ্ঠা রিফ্রেশ বোতামটি টিপানোর সময় এটি বিরতি দেওয়া হয়েছিল। আমি আরও মনে করি যে এটি কোনও ব্রাউজারের জন্য একটি প্রত্যাশিত আচরণ হওয়া উচিত (দুর্ভাগ্যক্রমে, এটি তা নয়)।
srgstm

2
প্রকৃতপক্ষে আমি স্ক্রিপ্ট সম্পাদনের সমাপ্তি অর্জনের লক্ষ্যে একটি কাজ পেয়েছি! ক্রোমে, আমি আমার অ্যাপ্লিকেশনগুলির একটি ডিবাগ করার জন্য ডিবাগারটি খুলি এবং আমি একটি ব্রেকপয়েন্ট স্থাপন করি। আমি পৃষ্ঠা চালাচ্ছি। ফাঁসির ফাঁকে ফাঁকে ফাঁসি কার্যকর করা হয়। তারপরে আমি সমস্যাটি যাচাই করি এবং বুঝতে পারি যে বাগটি কী কারণে ঘটছে। এক্সিকিউশনটি শেষ করতে আমি URL এর পাশের এক্স বোতামে ক্লিক করুন (পৃষ্ঠাটি লোড করা বন্ধ করতে) এবং তারপরে, স্ক্রিপ্টটি চালিয়ে যাওয়ার সময় (F8) এটি বন্ধ হয়ে যাবে। বরং এটি অর্জনের সহজ উপায়, আমি মনে করি। আপনি এই এক সম্পর্কে কি মনে করেন?
রোমান রোদ্রেগিজ-গিল

কোনও পৃষ্ঠা লোড হওয়ার পরে ক্রোমের এক্স বোতামটি রিফ্রেশ বোতামের সাথে প্রতিস্থাপন করা হয়েছে যাতে X টি চাপার পরে কোনও উপায় নেই (আমি এটিতে চেষ্টাও করেছি যা এক্স সব সময় উপলব্ধ থাকে তবে এটি স্থির হয়ে যায়)। পৃষ্ঠা লোডের সময় আমি আপনার পরামর্শটিও পরীক্ষা করে দেখেছি এবং এক্স এবং তারপরে F8 চাপার পরে স্ক্রিপ্টটি শেষ হয় না। সম্ভবত যে এক্সটি চাপার সময় ব্রাউজারে এখনও স্ক্রিপ্টগুলি লোড করা হয়নি সেগুলি পরে লোড করা হয়নি তবে এটি স্পষ্ট হওয়া উচিত।
srgstm

ওহ, আপনি ঠিক বলেছেন, এটি একটি দ্রুত পরীক্ষা ছিল এবং অ-প্রতিনিধি ছিল ... তারপরে মনে হয় এর কোনও সমাধান নেই।
রোমান রোদ্রেগিজ-গিল

3

নিম্নলিখিত প্রশ্নের সাথে @স্কটেন্ডেকারের দেওয়া উত্তরের প্রতি উল্লেখ করে ক্রোম এখন বিকাশকারী সরঞ্জামগুলির অধীনে 'অক্ষম জাভাস্ক্রিপ্ট' বিকল্প সরবরাহ করে:

  • ...উপরের ডানদিকে উল্লম্ব
  • সেটিংস
  • এবং 'পছন্দসমূহ' এর নীচে একেবারে নীচে 'ডিবাগার' বিভাগে যান এবং 'জাভাস্ক্রিপ্ট অক্ষম করুন' নির্বাচন করুন

ভাল জিনিস হ'ল আপনি এটি পরীক্ষা করে / চেক করে কেবল পুনরায় চালু করতে এবং পুনরায় চালিত করতে পারেন।


1
আপনি যদি ডেভোট করেন কারণ আপনি বিকাশকারী সরঞ্জাম মেনু এবং ক্রোম মেনুর মধ্যে বিভ্রান্ত হয়ে
পড়েছেন

আমার পক্ষে কাজ করেনি। আমি জাভাস্ক্রিপ্ট অক্ষম করুন বাক্সটি পরীক্ষা করেছিলাম, তবে স্ক্রিপ্টটি কেবল চালিয়ে যায়।
পল গর্বাবাস

1

আপনি এটি করতে পারেন, তবে আপনাকে অবশ্যই প্রথমে আপনার কোড প্রস্তুত করতে হবে।

গুগল ক্রোম দেব সরঞ্জামগুলিতে স্ক্রিপ্ট সম্পাদন বন্ধ করার জন্য নির্দেশাবলী:

(1) গ্লোবাল ভেরিয়েবল তৈরি করে প্রথমে আপনার কোডটি প্রস্তুত করুন :

var devquit=0;
$(document).ready({
    //the rest of your code

(২) যে জায়গাতেই আপনি প্রস্থান করতে চান, এই ভেরিয়েবলের মানটি পরীক্ষা করুন:

//Lotsa code
if (devquit > 0) return false;

(3) উপরের টেস্ট লাইনের (আগে) -র আগে বা স্ক্রিপ্টের কার্য সম্পাদন থামান

(4) কনসোল এ স্যুইচ করুন

(5) প্রকার:

> devquit
0
> devquit=1   <=== only this line is necessary
> devquit
1

()) স্ক্রিপ্ট কার্যকর করা চালিয়ে যান। return falseউপরের পদক্ষেপ (২) থেকে পরীক্ষাটি সম্পাদন করলে স্ক্রিপ্টটি হবে


মন্তব্য:

(ক) এই কৌশলটি গ্লোবাল ভেরিয়েবল এবং অবজেক্টের সাথে কাজ করে তবে এটি স্থানীয় ভেরিয়েবলগুলির সাথে কাজ করবে না। নোট করুন যে এটি:
newVar = 'never used before';
উইন্ডো অবজেক্টের একটি নতুন সম্পত্তি তৈরি করে (উপরের ট্রিকের সাথে কাজ করে), এদিকে :
var newVar = 'never used before';
একটি স্থানীয় ভেরিয়েবল তৈরি করে (উপরের ট্রিকের সাথে কাজ করে না!)

(খ) সুতরাং, আপনি এখনও ইতিমধ্যে চলমান কোডের সাথে এই কৌশলটি ব্যবহার করতে পারেন যদি আপনার কাছে বৈশ্বিক চলক থাকে বা কোনও বস্তু থাকে যা এর প্রদত্ত মান থাকে তবে এটি মিথ্যা ফেরত আসবে।

(সি) একটি চিম্টিতে, আপনি জুয়াকালার কৌশলটি ব্যবহার করতে পারেন এবং ডিওএম থেকে উপাদানগুলি (উপাদানগুলির ট্যাবে) মুছতে পারেন যা জাভাস্ক্রিপ্ট ত্রুটির কারণ হবে। উদাহরণস্বরূপ, ধরুন আপনার কোড রয়েছে var cartype = $('#cartype').val();যদি আপনি কোডটির সেই cartypeলাইনের আগে আইডি = দিয়ে উপাদানটি মুছেন , তবে জেএসগুলি সেই লাইনে বিভক্ত হবে। যাইহোক, আপনি কোডটি আবার চালানোর চেষ্টা করার সময় উপাদানটি নিখোঁজ হবে। উপরে বর্ণিত কৌশলটি আপনাকে কোড বিজ্ঞাপন অন্তর্নিহিত চালানো এবং পুনরায় চালানোর অনুমতি দেয়


আরও নোট:

(ক) কোডে ব্রেকপয়েন্টটি প্রবেশ করান: কেবল debugger;একটি লাইনে নিজেই টাইপ করুন। ডেভটুলগুলি যদি খোলা থাকে তবে স্ক্রিপ্টটি সেই সময়ে ডিবাগারে ঝাঁপিয়ে পড়বে। যদি ডেভটুলগুলি না খোলায়, কোড বিবৃতি উপেক্ষা করবে।

(খ) কোডটি ডিবাগ করার সময় jQuery লাইব্রেরিতে ঝাঁপ দেওয়া এড়াতে চান? এটি ব্ল্যাকবক্স। ক্রোম - বা - ফায়ারফক্সের জন্য ব্ল্যাকবক্স নির্দেশাবলী দেখুন


কৃতজ্ঞতা (দয়া করে ভিজিট করুন এবং উপস্থাপন করুন):

গুগল ক্রোম ব্যবহার করে জাভাস্ক্রিপ্ট ডিবাগিং লাইন

গুগল ক্রোমে ডিবাগ করার সময় জাভাস্ক্রিপ্ট ভেরিয়েবলের মানগুলি পরিবর্তন করা কি সম্ভব?


2
Any place where you may wish to quit, test the value of this variableএটা কি সাংঘাতিক! এই মুহুর্তে যেখানেই পদক্ষেপ নেওয়ার ঘটনা ঘটতে পারে আমি তা ছাড়তে চাই, আগে কোথায় তা হতে পারে তা আমি জানি না!
মাইকেল 20

আপনি যদি কোডটির পাশে কাজটি করতে চান তবে স্ক্রিপ্ট কার্যকর করা বন্ধ করার চেষ্টা করা ক্লায়েন্টের পক্ষে এটি সর্বাধিক ব্যবহারকারী বান্ধব।
গোস

??? আপনার কোনও গ্লোবাল ভেরিয়েবলের দরকার নেই। শুধু এই বোতামটি ক্লিক করুন
ড্যান ড্যাসকলেসকু

0

আপনি কোনও এক্সএইচআর প্যাটার্নে বিরতি দিতে পারেন যা এই ধরণের পরিস্থিতি ডিবাগ করার সময় আমি খুব দরকারী বলে মনে করি।

উদাহরণস্বরূপ আমি "/" সমন্বিত একটি ইউআরএল প্যাটার্নে ব্রেকপয়েন্ট দিয়েছি

এখানে চিত্র বর্ণনা লিখুন


0

আপনার যদি দুর্বৃত্ত লুপ থাকে তবে গুগল ক্রোম ডিবাগারে কোডটি থামান ( ||উত্স ট্যাবে থাকা " " " ছোট বোতাম)।

নিজেই ক্রোমে ফিরে যান, "টাস্ক ম্যানেজার" ( Shift+ ESC) খুলুন, আপনার ট্যাবটি নির্বাচন করুন, "শেষ প্রক্রিয়া" বোতামটি ক্লিক করুন।

আপনি অ্যাওউ স্ন্যাপ বার্তা পাবেন এবং তারপরে আপনি ( F5) পুনরায় লোড করতে পারেন ।

অন্যরা যেমন উল্লেখ করেছেন যে, বিরতি দেওয়ার সময় পৃষ্ঠাটি পুনরায় লোড করা দুর্বৃত্ত লুপটি পুনরায় চালু করার সমান এবং ডিবাগারটি লক করা থাকলে (কিছু ক্ষেত্রে ক্রোম বা পিসি পুনরায় চালু করার দিকে পরিচালিত করে) বাজে লকআপগুলির কারণ হতে পারে। ডিবাগারটির জন্য "স্টপ" বোতামটি দরকার। নোট: গৃহীত উত্তরটি পুরানো হয়ে গেছে যে এর কিছু দিক এখন স্পষ্টতই ভুল। আপনি যদি আমাকে ভোট দেন, প্লিজ ব্যাখ্যা করুন :)



-1

'বিকাশকারী সরঞ্জামগুলিতে' উত্স ট্যাবটি খুলুন, স্ক্রিপ্টের চলমান একটি লাইন নম্বরে ক্লিক করুন এটি একটি ব্রেকপয়েন্ট তৈরি করবে এবং সেখানে ডিবাগারটি ভেঙে যাবে।


-1

এই পোস্টে উপরে উল্লিখিত হিসাবে এই সমস্যার অনেকগুলি অ্যাপ্রোপিয়েট সমাধান রয়েছে তবে আমি একটি ছোট হ্যাক পেয়েছি যা স্ক্রিপ্টে সন্নিবেশ করা যেতে পারে বা এটি অর্জনের জন্য Chromes কনসোল (ডিবাগার) এ আটকানো যেতে পারে:

jQuery(window).keydown(function(e) { if (e.keyCode == 123) debugger; });

এটি যখন আঘাত করবেন তখন মৃত্যুদন্ড কার্যকর করা বন্ধ হয়ে যাবে F12


আপনি যদি (আশা) jQuery ব্যবহার না করেন?
ড্যান ড্যাসক্লেস্কু

তারপরে খাঁটি জাভাস্ক্রিপ্ট, ডকুমেন্ট.এডভিনিলিস্টারের মতো ব্যবহার করুন .. কীডাউন ইভেন্টটি পেতে ..
মুর্তজা হুসেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.