1. 程式人生 > >格式化字串(二)

格式化字串(二)

格式化字串(二)

直接使用字串“.”方法的方式格式化字串。

加強了字串原有的replace,也就是說,字串的原有原生方法,用法不變。


String.replace({JSON},|Boolean|?)

  1. 入門用法。

    例如:

     var string = "{name}是一個實用的{type},包含很多有趣的功能。".replace({ name: "v2", type: "前端輕量級框架" });
     console.log(string); // => v2是一個實用的前端輕量級框架,包含很多有趣的功能。

    說明:
    用法{Naming}1的方式嵌入字串中。

  2. 初級用法。

    例如:

     var string = "{name.v2}是一個實用的{type.slice(2)},包含很多有趣的功能。".replace({ name: { v2: "v2", vue: "vue" }, type: "前端輕量級框架" });
     console.log(string); // => v2是一個實用的輕量級框架,包含很多有趣的功能。

    說明:
    用法{Naming.[Naming|Function]}2的方式嵌入字串中。

  3. 中級用法。

    例如:

     var string = "{name.v2 + \"和\" + name.vue}都是實用的{type.slice(2)},包含很多有趣的功能。".replace({ name: { v2: "v2", vue: "vue" }, type: "前端輕量級框架" });
     console.log(string); // => v2和vue都是實用的輕量級框架,包含很多有趣的功能。

    說明:
    用法{Naming.[Naming|Function] [*^<%>+/-] + Naming.[Naming|Function]}

    3的方式嵌入字串中。

  4. 高階用法。

    例如:

     var string = "{name.v2 + \"和\" + name.vue}都是{level?.very}實用的{type.slice(2)},包含很多有趣的功能。".replace({ name: { v2: "v2", vue: "vue" }, level: { very: "【非常】" }, type: "前端輕量級框架" });
     console.log(string); // => v2和vue都是【非常】實用的輕量級框架,包含很多有趣的功能。
    
     var string = "{name.v2 + \"和\" + name.vue}都是{level?.very}實用的{type.slice(2)},包含很多有趣的功能。".replace({ name: { v2: "v2", vue: "vue" }, type: "前端輕量級框架" });
     console.log(string); // => v2和vue都是實用的輕量級框架,包含很多有趣的功能。

    說明:
    用法{Naming?.[Naming|Function]}4的方式嵌入字串中。

  5. 進價級用法。

    例如:

     var string = "{.?.name}是一個優秀的前端框架?".replace(null);
     console.log(string); // => 是一個優秀的前端框架?

    說明:
    用法{.?.Naming]}5的方式嵌入字串中。
    均可與以上四種方式排列組合執行。

參考程式碼:Github


  1. {Naming}代表JSON的屬性名稱,替換的時候將會把JSON屬性名稱對應的值替換到字串中。

  2. {Naming.[Naming|Function]} 代表可以獲取JSON的屬性值的屬性值,以及呼叫屬性值的方法(可以有多層,如:{a.b.c().d.e()})。

  3. {Naming.[Naming|Function] [*^<%>+/-] Naming.[Naming|Function]} 代表多個值之間可以進行加、減、乘、除等運算(可以有多層,如:{a + b - c ^ d / e})。

  4. {Naming?.[Naming|Function]} 可以加入探測符,在該值空(null)的時候,終止運算,用於規避預料之內的異常(可以有多層,如:{a.b?.c()?.d.e()})。

  5. {.?.Naming]} 本體探測,即對JSON本身進行空值(null)探測。注:第一個字元為.代表JSON物件本身。