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 中,如果一段文字被定義為標題,只要在這段文字前加 號即可。一級標題 二級標...