Этот фрагмент кода Ext.util.Format.number(parseFloat(number),'0,000.00')
преобразует ваш int / float в строку, поэтому вы не можете снова преобразовать эту строку в float со всеми предыдущими десятичными числами.
Мое первое предложение - использовать рендерер или renderData, если вы можете (вы не сказали, какой тип компонента вы используете), так что вы не измените необработанное значение числа и сможете получить его позже, проверьте этот краткий пример:
Ext.application({
name: 'Fiddle',
launch: function () {
var number = 5426.25154751156;
Ext.create('Ext.Component', {
renderTo: Ext.getBody(),
renderTpl: [
'<h1 id="{id}-title" data-ref="title">{title}</h1>',
'<p>{msg}</p>',
],
renderData: {
title: "Formated Number",
msg: Ext.util.Format.number(parseFloat(number), '0,000.00')
},
childEls: ["title"]
});
Ext.create('Ext.Button', {
text: 'Get raw value',
renderTo: Ext.getBody(),
listeners: {
afterrender: function (cmp) {
cmp.setHandler(function(){
console.log("number",number)
});
}
}
});
}
});
Fiddle
Если ваш компонент не имеет функции рендеринга, тогда, возможно, вам следует использовать другую переменную для хранения отформатированного значения, так что снова вы можете получить необработанное значение позже.