के अलावा अन्य ऑब्जेक्ट पर कॉल किया गया है, मुझे याद है कि जब मैं कुछ फ़ंक्शन में कॉलबैक पैरामीटर के रूप में console.log
पास करना चाहता था, तब तक यह तब तक काम नहीं करता जब तक कि मैंने विधि console
को बांधने के लिए उपयोग नहीं किया।console.log() कंसोल
उदाहरण के लिए:
const callWithTest = callback => callback('test');
callWithTest(console.log); // That didn't use to work.
callWithTest(console.log.bind(console)); // That worked (and works) fine.
Uncaught TypeError: Illegal invocation in javascript देखें।
हालांकि, हाल ही में मैंने देखा कि console.log()
कंसोल के अलावा अन्य ऑब्जेक्ट पर कॉल करने पर भी ठीक काम करता है।
console.log.call(null, 'test');
लॉग 'test'
: उदाहरण के लिए।
कब और क्यों बदल गया? क्या विनिर्देश इसके बारे में कुछ भी कहता है?
लॉगिंग एपीआई सभी की इजाजत दी उन्हें
यह नहीं रह गया है शामिल है कॉलबैक, foreach तरीकों, आदि से निपटने त्रुटि के लिए तर्क के रूप में पारित होने के लिए प्रतिदेय कार्यों की जानी चाहिए:
बीटीडब्ल्यू, ओपेरा (पुराना एक) उम्र के बाद से था ... – Bergi