格式化字串(二)
阿新 • • 發佈:2018-12-01
格式化字串(二)
直接使用字串“.”方法的方式格式化字串。
加強了字串原有的
replace
,也就是說,字串的原有原生方法,用法不變。
String.replace({JSON},|Boolean|?)
入門用法。
例如:
var string = "{name}是一個實用的{type},包含很多有趣的功能。".replace({ name: "v2", type: "前端輕量級框架" }); console.log(string); // => v2是一個實用的前端輕量級框架,包含很多有趣的功能。
說明:
用法{Naming}
1的方式嵌入字串中。初級用法。
例如:
var string = "{name.v2}是一個實用的{type.slice(2)},包含很多有趣的功能。".replace({ name: { v2: "v2", vue: "vue" }, type: "前端輕量級框架" }); console.log(string); // => v2是一個實用的輕量級框架,包含很多有趣的功能。
說明:
用法{Naming.[Naming|Function]}
2的方式嵌入字串中。中級用法。
例如:
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]}
高階用法。
例如:
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的方式嵌入字串中。進價級用法。
例如:
var string = "{.?.name}是一個優秀的前端框架?".replace(null); console.log(string); // => 是一個優秀的前端框架?
說明:
用法{.?.Naming]}
5的方式嵌入字串中。
均可與以上四種方式排列組合執行。
參考程式碼:Github
{Naming}
代表JSON
的屬性名稱,替換的時候將會把JSON
屬性名稱對應的值替換到字串中。↩{Naming.[Naming|Function]}
代表可以獲取JSON
的屬性值的屬性值,以及呼叫屬性值的方法(可以有多層,如:{a.b.c().d.e()})。↩{Naming.[Naming|Function] [*^<%>+/-] Naming.[Naming|Function]}
代表多個值之間可以進行加、減、乘、除等運算(可以有多層,如:{a + b - c ^ d / e})。↩{Naming?.[Naming|Function]}
可以加入探測符,在該值空(null
)的時候,終止運算,用於規避預料之內的異常(可以有多層,如:{a.b?.c()?.d.e()})。↩{.?.Naming]}
本體探測,即對JSON
本身進行空值(null
)探測。注:第一個字元為.
代表JSON
物件本身。↩