How JS split works on arabic plus english number strings?Direction (LTR/RTL): What's the difference between CSS direction and HTML direction attribute?Why does Javascript string replace reverse the word order for right to left languages?How do JavaScript closures work?How can I format numbers as currency string in JavaScript?How to check empty/undefined/null string in JavaScript?How can I convert a string to boolean in JavaScript?What's the difference between using “let” and “var”?How can I get query string values in JavaScript?How do I make the first letter of a string uppercase in JavaScript?How to replace all occurrences of a string?How to check whether a string contains a substring in JavaScript?
Does the app TikTok violate trademark?
A word that refers to saying something in an attempt to anger or embarrass someone into doing something that they don’t want to do?
Convert a string of digits from words to an integer
Calculate the Ultraradical
Assembly of PCBs containing a mix of SMT and thru-hole parts?
As a team leader is it appropriate to bring in fundraiser candy?
Why does my browser attempt to download pages from http://clhs.lisp.se instead of viewing them normally?
What is the logical distinction between “the same” and “equal to?”
Impossible violin chord, how to fix this?
How to identify whether a publisher is genuine or not?
Garage door sticks on a bolt
What should I consider when deciding whether to delay an exam?
Would a horse be sufficient buffer to prevent injury when falling from a great height?
French license plates
Can an energy drink or chocolate before an exam be useful ? What sort of other edible goods be helpful?
When did Unix stop storing passwords in clear text?
Is it possible for a company to grow but its stock price stays the same or decrease?
Sci-fi movie with one survivor and an organism(?) recreating his memories
Is "until mine is on tight" an idiom?
I transpose the source code, you transpose the input!
Whaling ship logistics
Avoiding dust scattering when you drill
What are examples of EU policies that are beneficial for one EU country, disadvantagious for another?
Can I exile my opponent's Progenitus/True-Name Nemesis with Teferi, Hero of Dominaria's emblem?
How JS split works on arabic plus english number strings?
Direction (LTR/RTL): What's the difference between CSS direction and HTML direction attribute?Why does Javascript string replace reverse the word order for right to left languages?How do JavaScript closures work?How can I format numbers as currency string in JavaScript?How to check empty/undefined/null string in JavaScript?How can I convert a string to boolean in JavaScript?What's the difference between using “let” and “var”?How can I get query string values in JavaScript?How do I make the first letter of a string uppercase in JavaScript?How to replace all occurrences of a string?How to check whether a string contains a substring in JavaScript?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
When I tried to split,
"بحد-8635".split('-')
then js gives me different result,
[0] - بحد,
[1] - 8635
console.log("بحد-8635".split('-'))and when I tried to split,
"2132-سسس".split('-')
It gives me different result,
[0] - 2132
[1] - سسس
console.log("2132-سسس".split('-'))How is this happening? How can this be implemented correctly?
javascript arabic
add a comment
|
When I tried to split,
"بحد-8635".split('-')
then js gives me different result,
[0] - بحد,
[1] - 8635
console.log("بحد-8635".split('-'))and when I tried to split,
"2132-سسس".split('-')
It gives me different result,
[0] - 2132
[1] - سسس
console.log("2132-سسس".split('-'))How is this happening? How can this be implemented correctly?
javascript arabic
I am unable to replicate the issue onecompiler.com/javascript/3v3946t3r It's splitting properly for the first string for me
– karthikdivi
8 hours ago
tried it in chrome console it is showing different result.
– Saurabh Arora
8 hours ago
I tried this in Chrome Dev Console and it does seem to be giving different results. Quite interesting.
– Saharsh
8 hours ago
1
Possible duplicateWhy does Javascript string replace reverse the word order for right to left languages?
– Code Maniac
7 hours ago
add a comment
|
When I tried to split,
"بحد-8635".split('-')
then js gives me different result,
[0] - بحد,
[1] - 8635
console.log("بحد-8635".split('-'))and when I tried to split,
"2132-سسس".split('-')
It gives me different result,
[0] - 2132
[1] - سسس
console.log("2132-سسس".split('-'))How is this happening? How can this be implemented correctly?
javascript arabic
When I tried to split,
"بحد-8635".split('-')
then js gives me different result,
[0] - بحد,
[1] - 8635
console.log("بحد-8635".split('-'))and when I tried to split,
"2132-سسس".split('-')
It gives me different result,
[0] - 2132
[1] - سسس
console.log("2132-سسس".split('-'))How is this happening? How can this be implemented correctly?
console.log("بحد-8635".split('-'))console.log("بحد-8635".split('-'))console.log("2132-سسس".split('-'))console.log("2132-سسس".split('-'))javascript arabic
javascript arabic
edited 7 hours ago
Casper
8535 silver badges14 bronze badges
8535 silver badges14 bronze badges
asked 8 hours ago
Saurabh AroraSaurabh Arora
718 bronze badges
718 bronze badges
I am unable to replicate the issue onecompiler.com/javascript/3v3946t3r It's splitting properly for the first string for me
– karthikdivi
8 hours ago
tried it in chrome console it is showing different result.
– Saurabh Arora
8 hours ago
I tried this in Chrome Dev Console and it does seem to be giving different results. Quite interesting.
– Saharsh
8 hours ago
1
Possible duplicateWhy does Javascript string replace reverse the word order for right to left languages?
– Code Maniac
7 hours ago
add a comment
|
I am unable to replicate the issue onecompiler.com/javascript/3v3946t3r It's splitting properly for the first string for me
– karthikdivi
8 hours ago
tried it in chrome console it is showing different result.
– Saurabh Arora
8 hours ago
I tried this in Chrome Dev Console and it does seem to be giving different results. Quite interesting.
– Saharsh
8 hours ago
1
Possible duplicateWhy does Javascript string replace reverse the word order for right to left languages?
– Code Maniac
7 hours ago
I am unable to replicate the issue onecompiler.com/javascript/3v3946t3r It's splitting properly for the first string for me
– karthikdivi
8 hours ago
I am unable to replicate the issue onecompiler.com/javascript/3v3946t3r It's splitting properly for the first string for me
– karthikdivi
8 hours ago
tried it in chrome console it is showing different result.
– Saurabh Arora
8 hours ago
tried it in chrome console it is showing different result.
– Saurabh Arora
8 hours ago
I tried this in Chrome Dev Console and it does seem to be giving different results. Quite interesting.
– Saharsh
8 hours ago
I tried this in Chrome Dev Console and it does seem to be giving different results. Quite interesting.
– Saharsh
8 hours ago
1
1
Possible duplicate
Why does Javascript string replace reverse the word order for right to left languages?– Code Maniac
7 hours ago
Possible duplicate
Why does Javascript string replace reverse the word order for right to left languages?– Code Maniac
7 hours ago
add a comment
|
3 Answers
3
active
oldest
votes
It depends on how you type the string(left to right / right to left). In the provided question, "2132-سسس" was typed from left to right and "8635-بحد" was typed from right to left.
Check the below snippet.
console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
4
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
@Saharsh You can usedir="ltr"ordir="rtl"to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir
– Ramesh
3 hours ago
add a comment
|
As mentioned in other answer this depends on how your string is typed (ltr or rtl),
To understand the difference set dir attribute on input and then split the value
function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>To read about What is difference between RTL and LTR
add a comment
|
Try this
console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());add a comment
|
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f58074813%2fhow-js-split-works-on-arabic-plus-english-number-strings%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
It depends on how you type the string(left to right / right to left). In the provided question, "2132-سسس" was typed from left to right and "8635-بحد" was typed from right to left.
Check the below snippet.
console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
4
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
@Saharsh You can usedir="ltr"ordir="rtl"to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir
– Ramesh
3 hours ago
add a comment
|
It depends on how you type the string(left to right / right to left). In the provided question, "2132-سسس" was typed from left to right and "8635-بحد" was typed from right to left.
Check the below snippet.
console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
4
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
@Saharsh You can usedir="ltr"ordir="rtl"to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir
– Ramesh
3 hours ago
add a comment
|
It depends on how you type the string(left to right / right to left). In the provided question, "2132-سسس" was typed from left to right and "8635-بحد" was typed from right to left.
Check the below snippet.
console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));It depends on how you type the string(left to right / right to left). In the provided question, "2132-سسس" was typed from left to right and "8635-بحد" was typed from right to left.
Check the below snippet.
console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));console.log("Typed left to right:");
console.log("2132-سسس".split('-'));
console.log("8635-بحد".split('-'));
console.log("---------------");
console.log("Typed right to left as arabians follow:");
console.log("سسس-2132".split('-'));
console.log("بحد-8635".split('-'));answered 8 hours ago
RameshRamesh
1,3737 silver badges22 bronze badges
1,3737 silver badges22 bronze badges
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
4
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
@Saharsh You can usedir="ltr"ordir="rtl"to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir
– Ramesh
3 hours ago
add a comment
|
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
4
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
@Saharsh You can usedir="ltr"ordir="rtl"to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir
– Ramesh
3 hours ago
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
ok understood. But this string is coming in response from backend to frontend and it is giving random result. How can this be done?
– Saurabh Arora
7 hours ago
4
4
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
Thanks for answer. Can you elaborate on topic about "typed left to right and reverse"? They both looks eerily same with a glance.
– Saharsh
7 hours ago
@Saharsh You can use
dir="ltr" or dir="rtl" to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir– Ramesh
3 hours ago
@Saharsh You can use
dir="ltr" or dir="rtl" to initialize the direction. Follow the link for a clear understanding: w3.org/International/questions/qa-html-dir– Ramesh
3 hours ago
add a comment
|
As mentioned in other answer this depends on how your string is typed (ltr or rtl),
To understand the difference set dir attribute on input and then split the value
function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>To read about What is difference between RTL and LTR
add a comment
|
As mentioned in other answer this depends on how your string is typed (ltr or rtl),
To understand the difference set dir attribute on input and then split the value
function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>To read about What is difference between RTL and LTR
add a comment
|
As mentioned in other answer this depends on how your string is typed (ltr or rtl),
To understand the difference set dir attribute on input and then split the value
function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>To read about What is difference between RTL and LTR
As mentioned in other answer this depends on how your string is typed (ltr or rtl),
To understand the difference set dir attribute on input and then split the value
function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>To read about What is difference between RTL and LTR
function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>function handleLTR()
let element = document.getElementById('default').value
console.log(element.split('-'))
function handleRTL()
let element = document.getElementById('rtl').value
console.log(element.split('-'))
<div>
<input id='default' value=''></input>
<button onClick=handleLTR()>Handle LTR</button>
</div>
<div>
<input id='rtl' dir="rtl" value=''></input>
<button onClick=handleRTL()>Handle RTL</button>
</div>edited 7 hours ago
answered 7 hours ago
Code ManiacCode Maniac
25.6k4 gold badges17 silver badges43 bronze badges
25.6k4 gold badges17 silver badges43 bronze badges
add a comment
|
add a comment
|
Try this
console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());add a comment
|
Try this
console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());add a comment
|
Try this
console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());Try this
console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());console.log("2132-سسس".split('-').sort());
console.log("8635-بحد".split('-').sort());
console.log("سسس-2132".split('-').sort());
console.log("1-حد".split('-').sort());answered 7 hours ago
Arsalan AkhtarArsalan Akhtar
3162 silver badges14 bronze badges
3162 silver badges14 bronze badges
add a comment
|
add a comment
|
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f58074813%2fhow-js-split-works-on-arabic-plus-english-number-strings%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
I am unable to replicate the issue onecompiler.com/javascript/3v3946t3r It's splitting properly for the first string for me
– karthikdivi
8 hours ago
tried it in chrome console it is showing different result.
– Saurabh Arora
8 hours ago
I tried this in Chrome Dev Console and it does seem to be giving different results. Quite interesting.
– Saharsh
8 hours ago
1
Possible duplicate
Why does Javascript string replace reverse the word order for right to left languages?– Code Maniac
7 hours ago