三元运算符中是可以嵌套的:
document.write(confirm('结婚了吗?')?(confirm('有孩子了吗?')?'已结婚且有孩子':('已结婚但还没孩子,准备在这个时间要孩子:'+prompt('什么时候要孩子?'))):('没结婚,准备在这个时间结婚:'+prompt('什么时候结婚?')))
但是如果嵌套比较复杂的话,建议还是用if语句来写:
if(confirm('结婚了吗?')){if(confirm('有孩子了吗?')){
document.write('已结婚且有孩子')
}else{
document.write('已结婚但还没孩子,准备在这个时间要孩子:'+prompt('什么时候要孩子?'))
}
}else{
document.write('没结婚,准备在这个时间结婚:'+prompt('什么时候结婚?'))
}
Change(a,b)的值直接套用方法就知道,比较容易(5)至于Change(A(a),B(b)):分布计算:
A(a):a=2
调用A方法后返回的是4!
PS:!是取反的意思。!针对bool类型有用,反正(针对非bool类型)均返回false,这里传入A方法的参数a的数字,非bool类型。所以这里返回的4.(可以简单的测试一下,alert(!12),会弹出false)
B(b):b=3
调用B方法后返回的是6!
PS:b<3?
Math.pow(3,b):2*b)==》b<3?询问b是否小于3(这里b==3),是false,执行2*b。所以是6
Change(A(a),B(b))=4+6
PS:
针对三元运算符a>b?a:b这里a和b不仅仅限制于单个数字(或bool),也可以是一个可以执行的方法。或嵌套三元运算符(a>b?(a>c?a:c):(a<d?a:d)或嵌套更深)
像你这个题目缺少条件,即判断不是你需要的时候返回什么值?下面假设没有你需要的值就返回no,具体三元运算符嵌套如下:
Test t = new Test()
t.str == "111"? "11":t.str == "222"? "22":t.str=="333"? "33":"no";
希望采纳哦