我有一个表有几个包含简单数字的单元格(IE:1.00,1000.00,10000.00).我正在尝试使用下面的"格式"功能格式化单元格内容.我已经在我的代码的不同区域成功使用了这个函数,但出于任何原因(我之所以在这里),当我尝试提供表格单元格的内容时,它不能像我预期的那样工作.
问题是我的单元格内容的类型是"对象"而不是"数字",因此它通过if语句滑动,然后将原始值返回给我.有没有办法可以强制数据为数字类型?我认为var n = new Number(cellText);会做的伎俩,然而,typeof作为对象返回.困惑.
在globalize.js中:
Globalize.format = function( value, format, cultureSelector ) {
culture = this.findClosestCulture( cultureSelector );
if ( value instanceof Date ) {
value = formatDate( value, format, culture );
}
else if ( typeof value === "number" ) {
value = formatNumber( value, format, culture );
}
return value;
};
Run Code Online (Sandbox Code Playgroud)
在我的页面中:
$(document).ready(function () {
$('td[globalize="true"]').each(function () {
var $this = $(this);
var cellText = $this.text();
if (cellText != null) {
var n = new Number(cellText);
var v = Globalize.formatNumber(n, _gloNum[0]);
$this.text(v);
}
})
});
Run Code Online (Sandbox Code Playgroud)
问题是我的单元格内容的类型是"对象"而不是"数字"
当你这样做时:
new Number
Run Code Online (Sandbox Code Playgroud)
您正在创建Number对象的新实例,这就是它为您提供对象而不是数字的原因.
有没有办法可以强制数据为数字类型?
var n = +(cellText);
Run Code Online (Sandbox Code Playgroud)
要么
var n = Number(cellText);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
614 次 |
| 最近记录: |