JQuery удаление символа "-" из строки

У меня есть строка "-123445". Можно ли удалить символ "-" из строки?

Я пробовал следующее, но безрезультатно:

$mylabel.text("-123456");
$mylabel.text().replace('-', '');

Ответ 1

$mylabel.text( $mylabel.text().replace('-', '') );

Так как text() получает значение, а text( "someValue" ) устанавливает значение, вы просто помещаете его внутри другого.

Был бы эквивалент:

var newValue = $mylabel.text().replace('-', '');
$mylabel.text( newValue );

EDIT:

Надеюсь, я правильно понял вопрос. Я предполагаю, что $mylabel ссылается на элемент DOM в объекте jQuery, а строка находится в содержимом элемента.

Если строка находится в некоторой другой переменной, не являющейся частью DOM, тогда вы, вероятно, захотите вызвать функцию .replace() против этой переменной, прежде чем вставлять ее в DOM.

Вот так:

var someVariable = "-123456";
$mylabel.text( someVariable.replace('-', '') );

или более подробная версия:

var someVariable = "-123456";
someVariable = someVariable.replace('-', '');
$mylabel.text( someVariable );

Ответ 2

$mylabel.text("-123456");
var string = $mylabel.text().replace('-', '');

если вы это сделали, переменная string теперь имеет значение "123456"

вы также можете (я думаю, лучший способ) сделать это...

$mylabel.text("-123456");
$mylabel.text(function(i,v){
   return v.replace('-','');
});

Ответ 3

Если вы хотите удалить все -, вы можете использовать:

.replace(new RegExp('-', 'g'),"")