জাভাস্ক্রিপ্টে fn () এবং নতুন fn () এর মধ্যে মৌলিক পার্থক্য


12

সমস্ত কী ক্ষেত্রে, নতুন কীওয়ার্ড সহ এবং ছাড়াই কোনও ফাংশন কল করা জাভাস্ক্রিপ্টে আলাদা? মানে সব কিছুর মধ্যে পার্থক্য রয়েছে?

testFn() বনাম new testFn()

উত্তর:


13

newএকটি নতুন (খালি) বস্তু এবং সেট তৈরি করে thisএটা, তারপর ফাংশন, যা বস্তুর জন্য কন্সট্রাকটর হিসাবে কাজ করে কল (নিপূণভাবে ব্যবহার করে thisকিছু )। মূলশব্দ ছাড়াই একই ফাংশনটিতে কল করা এটি বর্তমানে newযা thisবোঝায় তার উপর ভিত্তি করে কাজ করে ।


এর আরও কিছু আছে কি?
একেপি

@ এপিপি না এটি সত্যিই এত সহজ। যা উল্লেখ করা হয়নি তা ব্যতীত যদি ফাংশনটি স্পষ্টভাবে একটি রেফারেন্স টাইপ দেয় তবে তা ফিরে আসে newএবং তৈরি বস্তু নষ্ট হয়।
ইসাইলিজা

2
ব্যবহারের newফলে নতুন অবজেক্টের প্রোটোটাইপটি নতুন ফাংশনটি যে পাস হয়েছে তা প্রথম ফাংশনটির রেফারেন্সে সেট করবে। আমি মনে করি না যে আচরণ বৈধভাবে অন্য উপায়ে অর্জন করা যেতে পারে।
সুপারক্যাট

আপনি ঠিক বলেছেন, আমি এটা মিস করেছি।
ব্যবহারকারী 281377

1

এই রূপগুলি সিনট্যাক্টিক্যালি আলাদা: "নতুন" ভেরিয়েন্টের সাথে ধরে নেওয়া যায় যে ফাংশনটি একজন কনস্ট্রাক্টর। ছাড়া "নতুন" ধারণা বৈকল্পিক, যে এটা না একটি কন্সট্রাকটর।

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