javascript - 使用 JavaScript 简写形式连接复数或单数术语的字符串

标签 javascript angularjs

$scope.msg = 'Ok, you ate ' + num + ' hotdog' 
      + (num.length > 1) ? 's' : '' + ', got it!';

为什么上面的 $scope.msg 仅返回 's' ?我希望 hotdogs 代表纯数,hotdog 代表单数速记。嗯,无法发现错误。

最佳答案

您需要更多括号。

您的代码被解析为 ('Ok, you ate ' + num + ' hotdog' + (num.length > 1))'s':('' + ',明白了!')

您需要将整个条件表达式括在括号中。

关于javascript - 使用 JavaScript 简写形式连接复数或单数术语的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41088034/

相关文章:

javascript - 如何拖动和调整 DIV 元素的大小

javascript - 如何将 JSON 对象正确格式化为 Google 可视化图表的数据表

用于命令行实用程序的 Javascript

javascript - 如何在 PHP 中接收 Ajax urlencode

javascript - ")]}',\n"和 "{} &&"在避免json劫持方面的区别

javascript - 在 AngularJS (ngRepeat) 的多个项目数组中添加上一个/下一个按钮

javascript - AngularJS 方式 : extend controllers/views with notification functionality

javascript - 下拉选择框选项在 chrome 浏览器中不起作用

angularjs - 如何在 Angular 1.5 中注入(inject)组件路由器?

javascript - AngularJS 模态对话框表单对象在 Controller 中未定义