parseInt 计算 NaN 问题。拜托各位大神

TamSawyer 2015-08-21 03:12:15
$('[itemc="itemCountItem"]').keyup(function() {
var sum = 0;
$('[itemc="itemCountItem"]').each(function() {
sum = parseInt(sum) + parseInt($(this).val());
})
$("#gdCount").val(sum);// 赋值
});


这是代码 为什么计算的第一次显示NaN ?? 键盘抬起事件

$('[itemc="itemCountItem"]').keyup(function() {
var sum = 0;
$('[itemc="itemCountItem"]').each(function() {
sum = parseInt(sum) + parseInt($(this).val());
})
$("#gdCount").val(sum);// 赋值
});
...全文
249 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
天际的海浪 2015-08-24
  • 打赏
  • 举报
回复
引用 5 楼 tl921023 的回复:
[quote=引用 2 楼 jslang 的回复:]

	$('[itemc="itemCountItem"]').keyup(function() {
		var sum = 0;
		$('[itemc="itemCountItem"]').each(function() {
			sum += parseInt($(this).val()) || 0;
		})
		$("#gdCount").val(sum);// 赋值
	});
请问 “||” 这个是三元表达式的简写吗?

sum = parseInt(sum) +parseInt($(this).val()==""?0:$(this).val());
[/quote] 表达式A || 表达式B 的工作原理是:如果A的值为true(或A的值可以被当做为true)就返回A的值并且不执行表达式B,否则执行表达式B并且返回B的值 javascript中0 "" null undefined NaN会被当做为false,其实的值都可以被当做为true
TamSawyer 2015-08-24
  • 打赏
  • 举报
回复
引用 2 楼 jslang 的回复:

	$('[itemc="itemCountItem"]').keyup(function() {
		var sum = 0;
		$('[itemc="itemCountItem"]').each(function() {
			sum += parseInt($(this).val()) || 0;
		})
		$("#gdCount").val(sum);// 赋值
	});
请问 “||” 这个是三元表达式的简写吗?

sum = parseInt(sum) +parseInt($(this).val()==""?0:$(this).val());
孟子E章 2015-08-22
  • 打赏
  • 举报
回复
x = parseInt(value); if(isNaN(x)){ x = 0 } sum += x
风中的少年 2015-08-21
  • 打赏
  • 举报
回复

$('[itemc="itemCountItem"]').keyup(function() {
    var sum = 0;
    $('[itemc="itemCountItem"]').each(function() {
		var value = $(this).val();// 可能为空或NAN
		if(value){
			// 有值才计算
			sum += parseInt(value);
		}else {
			sum = 0;
		}
        
    })
    $("#gdCount").val(sum);// 赋值
});
天际的海浪 2015-08-21
  • 打赏
  • 举报
回复

	$('[itemc="itemCountItem"]').keyup(function() {
		var sum = 0;
		$('[itemc="itemCountItem"]').each(function() {
			sum += parseInt($(this).val()) || 0;
		})
		$("#gdCount").val(sum);// 赋值
	});
luhuiming741cs 2015-08-21
  • 打赏
  • 举报
回复
parseInt($(this).val()); val值为""parseInt的结果是NAN,NAN与任何数字运算都是NAN

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧