জাভাস্ক্রিপ্ট, 62 61 37 বাইট
সহায়তার জন্য @ দো'কে ধন্যবাদ!
আসল [৩ by বাইট]:
f=_=>'f='+'_'.repeat((10+f).length)+f
শিশু [by৪ বাইট]:
f=______________________________________=>'f='+'_'.repeat((10+f).length)+f
নাতনি [148 বাইট]:
f=________________________________________________________________________________________________________________=>'f='+'_'.repeat((10+f).length)+f
বিকল্প (কনসোল মুদ্রণ সহ, এবং একটি সম্পূর্ণ প্রোগ্রাম হিসাবে):
আসল [by১ বাইট]:
f=_=>console.log(`f=${'_'.repeat((0+f).length+5)+f};f()`);f()
শিশু [122 বাইট]:
f=______________________________________________________________=>console.log(`f=${'_'.repeat((0+f).length+5)+f};f()`);f()
নাতি [244 বাইট]:
f=________________________________________________________________________________________________________________________________________________________________________________________=>console.log(`f=${'_'.repeat((0+f).length+5)+f};f()`);f()
কিভাবে এটা কাজ করে!
1. f=_=>
ফাংশন চ হিসাবে সংজ্ঞায়িত করুনconsole.log(...)
2. ;f()
রান ফাংশন চ।
৩. (ফাংশনে চ)
নোট
console.log
পরিবর্তে প্রয়োজনীয় alert
কারণ alert
সত্যিকারের দীর্ঘ স্ট্রিং (কমপক্ষে আমার মেশিন / ব্রাউজার কনফিগারেশনে) ভাল খেলছে না বলে মনে হচ্ছে
_
এর ফাংশন f এর (অব্যবহৃত) প্যারামিটারের নাম ঢোকানো হয়, তা নিশ্চিত করার জন্য তারা চ এর stringification অন্তর্ভুক্ত করা হয়।
console.log
দ্বিতীয়টির উপরের প্রথম সমাধানটির মূল উন্নতি (এর হাত থেকে মুক্তি থেকে পৃথক হয়ে ): স্ট্রিংয়ে ফেলে দেওয়ার 10
পরিবর্তে ফাংশনে যুক্ত করা 0
একে আরও দীর্ঘ করে তোলে, পরে দৈর্ঘ্যে 1 যোগ করার প্রয়োজনীয়তা বাদ দিয়ে একটি বাইট সংরক্ষণ করে।