Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript的字符串连接';s是pural或单数名词的缩写_Javascript_Angularjs - Fatal编程技术网

使用javascript的字符串连接';s是pural或单数名词的缩写

使用javascript的字符串连接';s是pural或单数名词的缩写,javascript,angularjs,Javascript,Angularjs,为什么高于$scope.msg只返回“s”?我希望热狗为pural和热狗为单数与速记。Hmm无法捕捉错误。您可以对括号进行稍微不同的分组,只对三元语句进行分组,并在没有某些属性的情况下获取num值 $scope.msg = 'Ok, you ate ' + num + ' hotdog' + (num.length > 1) ? 's' : '' + ', got it!'; var num=1; log('好的,你吃了'+num+'hotdog'+(num>1's':'

为什么高于$scope.msg只返回“s”?我希望热狗为pural和热狗为单数与速记。Hmm无法捕捉错误。

您可以对括号进行稍微不同的分组,只对三元语句进行分组,并在没有某些属性的情况下获取
num

$scope.msg = 'Ok, you ate ' + num + ' hotdog' 
      + (num.length > 1) ? 's' : '' + ', got it!';
var num=1;
log('好的,你吃了'+num+'hotdog'+(num>1's':'')+',明白了!');
num=3;

log('好的,你吃了'+num+'hotdog'+(num>1's':'')+',明白了!')您需要更多的括号

您的代码被解析为
(“好的,您吃了”+num+“热狗”+(num.length>1))
<代码>'s'
(“+”,明白了!)


您需要将整个条件表达式用括号括起来。

为什么是长度属性?我更喜欢使用简写的一行代码,谢谢您的回答!
$scope.msg = 'Ok, you ate ' + num + ' hotdog' + (num > 1 ? 's' : '') + ', got it!';