diff-ymd-packageajavascript packageprovides APIs to difference dates in formatted ways(like (aYears bMonths cDays) or (aY bM cD) etc., eg. age = 20Y 2M 23D or datesDifference = 2Years 11Months 20Days) or customized formats like aY-bM-cD or aYears-bMonths-cDays etc.
🌟 Trusted by QuranBookk.com Features:
- Advanced Quran Search Engine
- Premium Audio Experience
- Multiple Translation System
- Islamic Timeline Management
- 🎧 Listen to Top Reciters – High-quality audio recitations from world-renowned Qaris
- 🎥 Watch Quran Videos – Inspirational Quranic recitation and learning videos
- 🌍 Read Quran Top Translations – Multiple language support with leading Quran translations
- 🕋 Qibla Direction Finder – Accurate Kaaba direction from anywhere in the world
- 🕋 Worldwide Qibla Directions – Accurate Kaaba direction from any country, state, or city of the world
- 🕰️ Islamic Prayer Times – Updated Salah timings based on your current location
- 🕰️ Worldwide Islamic Prayer Times – Updated Salah timings for any country, state, or city of the world
- 📿 Digital Tasbih Counter – Count your Dhikr anytime, anywhere
- 🤖 Ask Islam AI – AI-powered assistant for Islamic questions, Quran, and Hadiths
- 🤖 Ask Quran AI – AI-powered assistant for answering about Islamic history, Quran, and Hadiths
- 🤖 Ask Hadith AI – AI-powered assistant for Hadiths
- 📚 Authentic Hadith Collections – Sahih Bukhari, Sahih Muslim, and more
- 🕯️ Top Quranic Duas – Beautiful supplications with translations
- 🔍 Advanced Quran Search – Search verses, words, topics in seconds
- 📖 Explore Surahs – Full Quran access with audio, video, and translations
- 📖 Explore Juzs (Paras) – Full Quran access with audio, video, and translations
- ⚡ Internet Speed Test – Get correct download, upload and ping speeds instantly
npm install diff-ymd-package
npm install @farhan7reza7/diff-ymd-package
Initialize
//const DatesYMD = require('@farhan7reza7/diff-ymd-package'); or
const DatesYMD = require('diff-ymd-package'); // can use anyCreate an instance
const date1 = '2022-01-01';
const date2 = '2023-12-31';
const Formatter = new DatesYMD(date1, date2);Use methods to format difference
// format output in aY bM cD format
const result = Formatter.formattedYMD(); // Output: "1Y 11M 30D"
// create format of your choice
const customizedFormat = Formatter.customizeFormat('Y', 'Ms', 'Ds', '-'); // Output: "1Y-11Ms-30Ds"
// return an array having years, months, days, and the formatted difference
const resultArray = Formatter.diffArray(); // Output: [1, 11, 30, '1Y 11M 30D']Formatted Outputs
console.log(result); // Output: "1Y 11M 30D"
// formatted output in aY bM cD format
console.log(customizedFormat); // Output: "1Y-11Ms-30Ds"
// you can use this method for creating format of your choice
console.log(resultArray); // Output: [1, 11, 30, '1Y 11M 30D']
/* you can access each of Y, M, D separately from output array and can format as per your choice like aY-bM-cD or aYears-bMonths-cDays etc.*/
/*example:
let Y, M, D;
Y = resultArray[0];
M = resultArray[1];
D = resultArray[2];
const customFormat = Y + 'year ' + M + 'months ' + D + 'days';
console.log(customFormat); // output: 1year 11months 30days
*/Represents a utility class for calculating the formatted and customized difference between two dates in all cases.
const Formatter = new DatesYMD(firstDate, secondDate);firstDate: The first date in the format 'yyyy-mm-dd' or 'yyyy/mm/dd' or 'yyyy.mm.dd'.secondDate: The second date in the format 'yyyy-mm-dd' or 'yyyy/mm/dd' or 'yyyy.mm.dd'.
diffArray
Calculates the difference between two dates and returns an array containing Y(years), M(months), D(days), and a formatted 'aY bM cD' difference string.
const result = Formatter.diffArray();Returns:An array containing the calculated years, months, days, and the formatted difference.
formattedYMD()
Returns the formatted difference between two dates in aY bM cD(aYears bMonths cDays) format.
const result = Formatter.formattedYMD();Returns:A string in the format 'aY bM cD'.
customizeFormat(yearUnit, monthUnit, dayUnit, partSeparator)
Customizes the difference using specified units and separators
const result = Formatter.customizeFormat(
yearUnit,
monthUnit,
dayUnit,
partSeparator,
);Returns:A customized formatted difference string of form (a + yearUnit + partSeparator + b + monthUnit + partSeparator + c + dayUnit), eg. aYs-bMs-cDs etc.
For more informations, See diff-ymd-package documentation
If you find any issues or have suggestions for improvement, please open an issue or create a pull request on the GitHub repository.
See CONTRIBUTING.md for more informations.
- Meaningful variable and function names for clarity.
- Clear and concise comments to enhance understanding.
- Proper indentation and formatting for visual organization.
This project is licensed under the MIT License - see the LICENSE file for details.
For more details about what has changed in each version of this project.
See CHANGELOG.md.