我在字符串拼接的过程中有一个简单的逻辑需要判断,但是加入到字符串中会导致后面的字符串无法拼接直接被忽略
strcoupon += '<div class="mycoupon">' +
'<div class="reset">' +
'<div class="reset" id="j-coupon">'+
'<img src="'+ coupon.url +'">'+
'</div>'+
'<p class="mypaper">'+ coupon.name +'</p>'+
**'<p class="code">优惠码:' + _data[i].extInfo || "无" +'</p>'+**
'<div class="uesrule" target="_blank">使用规则'+
'<div class="gamerule f-dn">'+
'<div class="gamerulereset">'+
'<p>' + coupon.rule + '</p>'+
'</div>'+
'</div>'+
'<div class="ruletriangle f-dn"></div>'+
'</div>'+
'</div>'+
'</div>';
<p class="code">优惠码:' + _data[i].extInfo || "无" +'</p>'+这行代码即为加逻辑的代码 我试过'无',在后面加数字,都不可以,只要加上 ||之后后面的字符串就被忽略了
我还试过三元运算符 可是会出现奇怪的东西 就是 我所有的字符串都不见了 只有data[i].extInfo这个值可以显示出来
求救!!!!
优惠码:' + (_data[i].extInfo || "无") 优先级的问题
用括号括起来
你在拼接前 判断好 赋值给变量呢?
你可以在拼接之前把需要处理的字符串全部处理好,再进行拼接
var _code = _data[i].extInfo || "无" ;
strcoupon += '<div class="mycoupon">' +
'<div class="reset">' +
'<div class="reset" id="j-coupon">'+
'<img src="'+ coupon.url +'">'+
'</div>'+
'<p class="mypaper">'+ coupon.name +'</p>'+
**'<p class="code">优惠码:' + _code +'</p>'+**
'<div class="uesrule" target="_blank">使用规则'+
'<div class="gamerule f-dn">'+
'<div class="gamerulereset">'+
'<p>' + coupon.rule + '</p>'+
'</div>'+
'</div>'+
'<div class="ruletriangle f-dn"></div>'+
'</div>'+
'</div>'+
'</div>';