আমি জানি __proto__
অবমূল্যায়ন করা হয়েছে (বা স্ট্যান্ডার্ডের অংশ নয়) এবং এগুলি কিন্তু আমি এখনও কৌতূহলী হয়েছি এর অর্থ কী তা যখন অবৈধ তারিখ বলে তখন আমি এর __proto__
মূল্য দেখি যখন ..
var myDate = new Date(1331869050000);
আমি জানি __proto__
অবমূল্যায়ন করা হয়েছে (বা স্ট্যান্ডার্ডের অংশ নয়) এবং এগুলি কিন্তু আমি এখনও কৌতূহলী হয়েছি এর অর্থ কী তা যখন অবৈধ তারিখ বলে তখন আমি এর __proto__
মূল্য দেখি যখন ..
var myDate = new Date(1331869050000);
উত্তর:
"আমি এখনও অবাক হয়েছি যখন এটি অবৈধ তারিখ বলে তখন এর অর্থ কী"
এটি কেবল কনস্ট্রাক্টর ফাংশনের অবজেক্টের toString
মান ।prototype
Date
Date.prototype.toString(); // "Invalid Date"
আপনি যদি এটি চান তবে এটি ওভাররাইড করতে পারেন ...
Date.prototype.toString = function() { return "I like turtles." };
var myDate = new Date(1331869050000);
myDate.__proto__; // I like turtles.
সামান্য বিষয়, তবে __proto__
ECMAScript এর পরবর্তী সংস্করণ, কোডনাম হারমোনিটির জন্য বর্তমান কার্য খসড়াটিতে রয়েছে।
http://wiki.ecmascript.org/doku.php?id=harmony:specifications_drafts
- সুনির্দিষ্ট
__proto__
বৈশিষ্ট্য সহ বিভাগ B.3.1 যুক্ত করা হয়েছে ।
আপনি একটি নতুন তারিখ অবজেক্ট তৈরি বিবেচনা করে, আমি এটি নিয়ে চিন্তা করব না। কারণটির কারণ, যদি আপনি এই কোডটি চেষ্টা করেন:
var myDate = new Date(1331869050000);
alert(typeof myDate.getMonth != 'undefined') //true
এটি নির্ধারণ করবে যে আপনি তারিখ অবজেক্টের পদ্ধতিগুলি উত্তরাধিকার সূত্রে প্রাপ্ত এবং বাস্তবে তারিখের সংজ্ঞা দেওয়া আছে।
আপনি যদি আরও তদন্ত করতে চান তবে এই পোস্টটি একবার দেখুন ।
Date.prototype
একটি তারিখ অবজেক্ট তবে এর[[PrimitiveValue]]
অভ্যন্তরীণ সম্পত্তি হ'লNaN
(তারিখের বস্তুগুলিতে এই অভ্যন্তরীণ সম্পত্তি সময় মূল্য রাখে ), সুতরাং এটি প্রতিনিধিত্ব করে না আসলে একটি বৈধ তারিখ।Date.prototype
new Date(NaN)