بازگرداندن کاراکترهای ISO-Western به فارسی

شروع موضوع توسط eAmin ‏8 فوریه 2010 در انجمن برنامه‌نویسی با جاوااسکریپت (JavaScript)

کلمات کلیدی:
  1. eAmin

    eAmin Well-Known Member

    ارسال‌ها:
    944
    تشکر شده:
    845
    امتیاز دستاورد:
    93
    سلام.

    در راستای این آموزش و تابع ارائه شده در این آدرس، تصمیم به پیاده سازی این تابع در JavaScript کردم.

    کد (Text):

    /**
     * Original by AHHP(Amir Hossein Hodjaty Pour) ~ Boplo@Boplo.ir
     * Port to JavaScript by Amin Akbari [eAmin [-dot-] JS [-at-] live [-dot-] com]
     * License : GPL
     */

    function western_to_persian(str) {
        var character = {
            '\u00db\u00b0' : '\u06f0', '\u00db\u00b1' : '\u06f1', '\u00db\u00b2' : '\u06f2', '\u00db\u00b3' : '\u06f3', '\u00db\u00b4' : '\u06f4', '\u00db\u00b5' : '\u06f5', '\u00db\u00b6' : '\u06f6', '\u00db\u00b7' : '\u06f7', '\u00db\u00b8' : '\u06f8',
            '\u00db\u00b9' : '\u06f9', '\u00d8\u00a2' : '\u0622', '\u00d8\u00a7' : '\u0627', '\u00d8\u00a3' : '\u0623', '\u00d8\u00a5' : '\u0625', '\u00d8\u00a4' : '\u0624', '\u00d8\u00a6' : '\u0626', '\u00d8\u00a1' : '\u0621', '\u00d8\u00a8' : '\u0628',
            '\u00d9\u00be' : '\u067e', '\u00d8\u00aa' : '\u062a', '\u00d8\u00ab' : '\u062b', '\u00d8\u00ac' : '\u062c', '\u00da\u2020' : '\u0686', '\u00d8\u00ad' : '\u062d', '\u00d8\u00ae' : '\u062e', '\u00d8\u00af' : '\u062f', '\u00d8\u00b0' : '\u0630',
            '\u00d8\u00b1' : '\u0631', '\u00d8\u00b2' : '\u0632', '\u00da\u02dc' : '\u0698', '\u00d8\u00b3' : '\u0633', '\u00d8\u00b4' : '\u0634', '\u00d8\u00b5' : '\u0635', '\u00d8\u00b6' : '\u0636', '\u00d8\u00b7' : '\u0637', '\u00d8\u00b8' : '\u0638',
            '\u00d8\u00b9' : '\u0639', '\u00d8\u00ba' : '\u063a', '\u00d9\u0081' : '\u0641', '\u00d9\u201a' : '\u0642', '\u00da\u00a9' : '\u06a9', '\u00da\u00af' : '\u06af', '\u00d9\u201e' : '\u0644', '\u00d9\u2026' : '\u0645', '\u00d9\u2020' : '\u0646',
            '\u00d9\u02c6' : '\u0648', '\u00d9\u2021' : '\u0647', '\u00db\u0152' : '\u06cc', '\u00d9\u0160' : '\u064a', '\u00db\u20ac' : '\u06c0', '\u00d8\u00a9' : '\u0629', '\u00d9\u017d' : '\u064e', '\u00d9\u008f' : '\u064f', '\u00d9\u0090' : '\u0650',
            '\u00d9\u2018' : '\u0651', '\u00d9\u2039' : '\u064b', '\u00d9\u0152' : '\u064c', '\u00d9\u008d' : '\u064d', '\u00d8\u0152' : '\u060c', '\u00d8\u203a' : '\u061b', '\u002c' : '\u002c', '\u00d8\u0178' : '\u061f'
        };

        for (var i in character) {
            var rs = '';
            var d = 0;
            for (var j = str.indexOf(i); j > -1; j = str.indexOf(i, j)) {
                rs += str.substring(d, j);
                rs += character[i];
                j += i.length;
                d = j;
            }
            str = rs + str.substring(d, str.length);
        }

        return str;
    };
     
    از این تابع می تونید دقیقا مثل تابعی که در آدرس بالا معرفی شده استفاده کنید.
    موفق باشید.
     
    نوشته شده توسط eAmin در ‏8 فوریه 2010
    thE_Knight، maysam.m، D.A.V.O.O.D و 3 نفر دیگر از این ارسال تشکر کرده اند.

به اشتراک بگذارید