10.10.2013, 09:52
|
Интересующийся
|
|
Регистрация: 05.10.2013
Сообщений: 26
|
|
как поменять местами значения в строке javascript?
есть строка вот такого типа "43.262767791748 ,76.9411392211914"
а мне нужно чтобы она была вот такого "76.9411392211914, 43.262767791748"
как сделать?хотел сделать чисто substrом но длинна цифр меняется...как реализовать данный скрипт?
|
|
10.10.2013, 10:03
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
vladimir7517,
alert("43.262767791748 ,76.9411392211914".replace(/([^,]+)\s,([^,]+)/, "$2 ,$1" ));
Последний раз редактировалось рони, 10.10.2013 в 10:06.
|
|
10.10.2013, 10:10
|
Интересующийся
|
|
Регистрация: 05.10.2013
Сообщений: 26
|
|
Супер профессор,спасибо
|
|
10.10.2013, 10:36
|
Кандидат Javascript-наук
|
|
Регистрация: 24.04.2012
Сообщений: 118
|
|
vladimir7517,
Можно:
<html>
<head>
<title>Документ без названия</title>
<script type="text/javascript">
function n()
{
var a = "43.262767791748 ,76.9411392211914";
var b = '';
b += a.substr(a.indexOf(',') + 1, a.length - a.indexOf(','));
b += ', '+a.substr(0, a.indexOf(','));
alert(b);
}
</script>
</head>
<body>
<a href="javascript:n();">CLICK</a>
</body>
</html>
|
|
10.10.2013, 10:41
|
|
Профессор
|
|
Регистрация: 28.03.2012
Сообщений: 376
|
|
вот способ красивее)
function reverse(s) {
var arr = s.split(',');
return arr[1] + ', ' + arr[0];
};
console.log(reverse('43.262767791748 ,76.9411392211914')); // 76.9411392211914, 43.262767791748
|
|
11.10.2013, 19:59
|
|
Профессор
|
|
Регистрация: 23.06.2011
Сообщений: 1,165
|
|
Сообщение от keen
|
var arr = s.split(',');
|
пробел пропустили
|
|
11.10.2013, 20:08
|
|
Профессор
|
|
Регистрация: 28.03.2012
Сообщений: 376
|
|
Сообщение от BETEPAH
|
пробел пропустили
|
где?) как по мне - всё на месте.
простое и элегантное решение.
|
|
11.10.2013, 20:29
|
|
Профессор
|
|
Регистрация: 23.06.2011
Сообщений: 1,165
|
|
Сообщение от keen
|
где?) как по мне - всё на месте.
простое и элегантное решение.
|
Я не спорю, сам хотел его предложить, только разбивать нужно строку по двум символам - пробел и запятая, иначе в arr[0] попадет лишний пробел в конце
|
|
11.10.2013, 20:38
|
|
Профессор
|
|
Регистрация: 28.03.2012
Сообщений: 376
|
|
дык у меня более универсальное решение - на случай если числа будут разделены ", ", а не только " ," .
|
|
11.10.2013, 20:46
|
|
Профессор
|
|
Регистрация: 23.06.2011
Сообщений: 1,165
|
|
function reverse(s) {
var arr = s.split(',');
var arr2 = s.split(' ,');
alert(arr[0].length + ' : ' + arr2[0].length);
};
reverse('43.262767791748 ,76.9411392211914');
|
|
|
|