首页 > 解决方案 > string.length 输出错误的值?

问题描述

此代码位于 ngFor 循环内的 html 模板中

{{ (user.text.length>1)? (user.text | slice:0:1)+'...':(user.text) }}
{{user.text.length}}

user 是具有以下文本属性示例的对象。

 user {
    name: dslkdskld,
    text: [johnd dskjsd, mark kdsdlk, joe sldk, john sdkds]
   }

String.length 在这种情况下输出 4。它是否假设所有内容都在 coma 1 字符之前?我希望获得整个 user.text 的字符长度

标签: javascriptangular

解决方案


因为user.text不是text,它array在这里

尝试打印{{ user.text[0] }},这将消除您的疑虑

你所期待的应该是这样的

user {
    name: "dslkdskld",
    text: "[johnd dskjsd, mark kdsdlk, joe sldk, john sdkds]" // <--- within quotes
}

推荐阅读