(1)当函数定义域为R时,x2+2x+a>0恒成立,所以有△=4-4a<0,解得a>1,所以a的取值范围为(1,+∞);(2)当函数的值域为[0,+∞),即y=lg(x2+2x+a)≥0时,x2+2x+a=(x+1)2+a-1的最小值为1,所以有a-1=1,解得a=2,所以a的取值范围为{a|a=2};(3)当函数的值域为R时,x2+2x+a的值域包括一切正实数,所以有△=4-4a≥0,解得a≤1.所以a的取值范围为(-∞,1].