Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.10.2013, 00:46
Профессор
Отправить личное сообщение для Vampir3 Посмотреть профиль Найти все сообщения от Vampir3
 
Регистрация: 06.12.2011
Сообщений: 172

простенькая задача
Привет.
Есть такая переменная:

var a = "123(456)";


Как её проще всего разбить на 2 переменных - то что в скобках, и то, что за скобками? (cur и max)

Есть такие варианты:

var a = "123(456)";
var cur = parseInt(a);
var max = Number(a.replace(cur,'').replace(/[^0-9]/g,''));
alert(cur);alert(max);


или

var a = "123(456)";
var cur = parseInt(a);
var max = Number(a.replace(cur,'').replace('(','').replace(')',''));
alert(cur);alert(max);


или

var a = "123(456)";
var cur = parseInt(a);
var max = Number(a.split('(')[1].replace(')',''))
alert(cur);alert(max);


Может есть варианты попроще?)
Ответить с цитированием
  #2 (permalink)  
Старый 30.10.2013, 00:51
Профессор
Отправить личное сообщение для Vampir3 Посмотреть профиль Найти все сообщения от Vampir3
 
Регистрация: 06.12.2011
Сообщений: 172

var a = "123(456)";
var cur = Number(a.split(/[^0-9]/g)[0]);
var max = Number(a.split(/[^0-9]/g)[1]);
alert(cur);alert(max);


Вот, вроде как самый нормальный
или можно еще как-то?
Ответить с цитированием
  #3 (permalink)  
Старый 30.10.2013, 01:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

Vampir3,

var a = "123(456)";
var cur = a.match(/\d+/g);
var max = cur[1];
cur = cur[0]
alert(cur);alert(max)
Ответить с цитированием
  #4 (permalink)  
Старый 30.10.2013, 05:16
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

рони, в число забыл преобразовать

var a = "123(456)",
	cur = a.match(/\d+/g),
	max = +cur[1];
cur = +cur[0];
alert([cur, max]);
Ответить с цитированием
  #5 (permalink)  
Старый 30.10.2013, 05:22
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Вариант:
var a = "123(456)",
	cur = a.split(/[\(\)]/),
	max = +cur[1],
cur = +cur[0];
alert([cur, max]);
Ответить с цитированием
  #6 (permalink)  
Старый 30.10.2013, 09:25
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

И мои 5 копеек...

var a = "123(456)",
	cur = a.split(/\(|\)/),
	max = +cur[1],
cur = +cur[0];
alert([cur, max]);
Ответить с цитированием
  #7 (permalink)  
Старый 30.10.2013, 23:21
Профессор
Отправить личное сообщение для Vampir3 Посмотреть профиль Найти все сообщения от Vampir3
 
Регистрация: 06.12.2011
Сообщений: 172

спасибо))
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача c тегом <g> в svg Kosty@n Элементы интерфейса 2 14.01.2013 19:08
Интересная задача для javascript bobri4 Общие вопросы Javascript 4 16.07.2011 13:08
Простенькая задача =) Reddemin Общие вопросы Javascript 8 05.12.2008 16:25