mockjs 的語法規則(二)

2022-08-20 19:45:10 字數 1754 閱讀 5283

mockjs主要有兩種語法規範: 資料模板定義規範dtd  && 資料佔位符定義規範dpd;

資料模板中的每個屬性由三部分組成: 屬性名、規則、屬性值;

屬性名和規則之間用 「|」 進行分割;生成規則是可選的,一共有七種規則,但是規則的含義具體要根據屬性值來進行確定,不同的屬性值對應的規則含義是不同的;屬性值中可以包含 @佔位符,並且屬性值還指定了最終值的初始值以及型別;

我們在實際的應用中,屬性值的型別其實就是我們 js 中資料的型別:string、number、boolean、object、array、function以及正則reg ;

1)、屬性值為 string

' name| min-max' : string ;  //通過重複string生成乙個字串,string的重複次數 大於等於min ; 小於等於max ;

' name| count' : string;  //通過重複string生成乙個字串,重複次數為 count ;

2)、屬性值為 number

' name| min-max' : number ;  //生成乙個大於等於min 小於等於 max 的整數;

' name| +1' : number ;  //屬性值自動加1,初始值為 number ;

『 name| min-max.dmin-dmax』 : number ;  //生成乙個浮點數,整數部分大於等於min,小於等於max; 小數部分保留 dmin 到 dmax 位;

3)、屬性值為 boolean

' name| 1' : boolean ; //隨機生成乙個布林值,值為 true 和 false 的概率均為 50%;

' name| min-max' : boolean ; //隨機生成乙個布林值,值為 true 的概率為 min/( min + max) ; 值為 false 的概率為 max/( min + max);

4)、屬性值為 object 

' name| count' : object ;    //從object中隨機抽取count 個屬性;

' name| min-max' : object;  //從object中隨機抽取 min 到 max 個屬性;

5)、屬性值為 array

' name| 1': array ;  //從array中隨機選取乙個值最為最終值;

' name| +1' : array;  //從array 中順序選擇乙個元素,最為最終值;

' name| min-max' : array ;  //通過重複array 生成乙個新陣列,重複的次數大於等於min, 小於等於max ;

' name| count' : array;  //通過重複array 生成乙個新陣列,重複的次數為 count ;

6)、屬性值為 function

' name' : function ;  // 執行function,使其最終的返回值最為 最終的屬性值;函式的上下文為 name 所在的物件;

7)、屬性值為 regexp

' name' : reg ;   //根據正則去生成乙個符合這個正規表示式規則的屬性值;

資料佔位符只是在屬性值字串中佔據乙個位置,最終並不出現在屬性值中, 佔位符的格式為  @佔位符  ||  @佔位符(引數 [,引數]);

使用資料佔位符的時候需要注意的是: 1)、用@來標識的其後的是佔位符;2)、佔位符應用的是mock.random的方法; 3)、通過mock.random.extend()來擴充套件自定義佔位符; 4)、佔位符也可以引用資料模板中的資料而且會優先引用;5)、佔位符支援相對路徑也支援絕對的路徑;

XML 語法規則

xml的語法規則非常簡單,同時也是非常嚴格的 它易於學習,易於使用。因此,開發能夠識別和處理xml的軟體也是非常容易的。xml文件使用自述式語法,並且,語法規則非常簡單。tove jani reminder don t forget me this weekend 文件的第一行 xml宣告 定義xm...

C 語法規則

c 中的布林型別 布林型別只占用乙個bit 但是如果連續定義多個布林型別時,編譯器可能會多個布林型別定義在一起。true 編譯器用1來表示。false 編譯器用0來表示。將乙個其他型別的資料賦給布林型別變數 c 編譯器會將所有的非0的值轉換為true 1 將0 轉化為false 0 三木運算子?將乙...

Markdown語法規則

這裡可以看到官方的 markdown 語法規則文件,當然,後文我也會用自己的方式,闡述這些語法在實際使用中的用法。mac 平台 windows ios web 平台 標題是每篇文章都需要也是最常用的格式,在 markdown 中,如果一段文字被定義為標題,只要在這段文字前加 號即可。一級標題 二級標...