【问题标题】:angularjs binding: which is preffered {{a}} {{b}} or {{a + " " + b}}?angularjs 绑定:首选 {{a}} {{b}} 还是 {{a + " " + b}}?
【发布时间】:2013-11-26 16:00:20
【问题描述】:

是否建议使用单个表达式并在其中连接或使用多个表达式,每个变量一个?

【问题讨论】:

    标签: angularjs binding


    【解决方案1】:

    这两个表达式在大多数情况下是可以互换的,并且它们生成相同的 DOM 结构。因此,在它们之间进行选择很大程度上取决于口味。

    但是,两者之间有一个非常微妙的区别,ab 不是原始对象。

    如果对象ab 不是原始对象,则{{a}} {{b}} 表单将在它们上调用toJSON 函数并显示结果(通常带有引号)。执行{{a + ' ' + b}} 将首先将它们都转换为字符串,然后连接字符串,始终返回一个原始字符串,该字符串将不带引号呈现。

    演示:http://plnkr.co/edit/yKSBj8DaD9Exn9fDNkzc?p=preview

    另一个奇怪的地方是ng-bind 调用.toString 函数而不是.toJSON,后者具有lead to issues

    【讨论】:

    • 如果我有很多这样的表达方式,性能方面有什么不同吗?
    • @redben 我不这么认为。稍后我将使用 jsperf 进行检查。
    猜你喜欢
    • 1970-01-01
    • 2014-03-29
    • 2021-11-28
    • 1970-01-01
    • 2021-10-06
    • 2013-07-02
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    相关资源
    最近更新 更多