20151118小問題

1.模板引擎

百度百科:模板引擎(這里特指用于Web開發的模板引擎)是為了使 用戶界面與業務數據(內容)分享而產生的,它或以生成特定格式的文檔,用于網站的模板引擎就會產生一個標準的HTML文檔.

目的:生成一個標準的HTML文檔.

概念:模板引擎不屬于特定技術領域,它是跨領域跨平臺的概念.在Asp下有模板引擎,在PHP下也有模板引擎,在c#下也有模板引擎,基礎javascript,winform開發都會用到模板引擎技術.

原理:模板引擎的實現方式有很多,最簡單的是"轉換型"模板引擎,這類模板引擎只是將指定模板內容(字符串)中特定標記(子字符串)替換一下便生成了最終需要的業務數據(比如網頁).

轉換型模板引擎實現簡單,但其效率低下,無法滿足高負載的應用需求(比如有少量訪問珠網站),因此還出現了"解釋型"模板引擎和"編譯型"模板引擎等.

模板引擎可以讓(網站)程序實現界面與數據分享,這就大大提升了開發效率,良好孤設計也使得代碼重用變得更加容易.

我們司空見慣的模板安裝卸載等概念,基本上都和模板引擎有關千絲萬縷的聯系.模板不只是可以讓你實現代碼分離(業務邏輯代碼和用戶界面代碼),也可以實現數據分離(動態數據和靜態數據),還可以實現代碼單元共享(代碼重用),基至是多語言,動態頁面和靜態頁面自動均衡(SDE)等等與用戶界面可能沒有關系的功能.

相關推薦:

Smarty:Smarty的特點是將模板編譯成PHP腳本,然后執行這些腳本。很快,非常靈活。是一個模板類,一般也簡稱為模板。Smarty里面有專門的模板引擎。模板的主要功能就是邏輯與顯示的分離,也就是PHP和HTML的分離。

Heyes Template Class:一個非常容易使用,但功能強大并且快速的模板引擎,它幫助你把頁面布局和設計從代碼中分離。
FastTemplate:一個簡單的變量插值模板類,它分析你的模板,把變量的值從HTML代碼中分離處理。
ShellPage:一個簡單易用的類,可以讓你的整個網站布局基于模板文件,修改模板就能改變整個站點。

STP Simple Template Parser:一個簡單、輕量級并且易于使用的模板分析類。它可以從多個模板中組裝一個頁面,把結果頁面輸出到瀏覽器或者文件系統。

OO Template Class:一個你可以用在自己程序中的面向對象的模板類。
SimpleTemplate:一個可以創建和結構化網站的模板引擎。它可以解析和編譯模板。

?

2.Json

百度百科:JSON(javascript object notation)是一種輕量級的數據交換格式.它基于ECMAScript的一個子集.json采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習慣(包括C,C++,C#,Java,JavaScript,Perl,Python等).這些特性使json成為理想的數據交換語言.易于人閱讀和編寫,同時民易于機器解析和生成(一般用于提升網絡傳輸速率).

json語法是javascript對象表示語法的子集,數據在鍵值對中,數據由逗號分隔,花括號保存對象,方括號保存數組.

json數據的書寫格式是:名稱/值對(也只可以說成鍵值對)

名/值對組合中的名稱寫在前面(在雙引號中),值對寫在后面(同樣在雙引號中),中間用冒號隔開,也就是說不管名稱還是值都要用雙引號引起來,而且只能是雙引號,不能是單引號.

json值可以是任何類型,包括number,string,boolen,array,object,null,undefined

有兩種格式,花括號{}或方括號[].

用戶在網頁上書寫的內容一般是以json字符串的形式傳到后臺的,后臺拿到這個字符串不能直接使用,需要轉化為對象形式才能使用,可以用JSON.parse()把json字符串轉換成相對應的json對象.

為了更直觀的了解json,可以看下面的代碼

var json1='{"user":"honghong","age":38,"job":"CEO"}';var json2='["feng",20,"Programmer"]';var parseJSON=JSON.parse(json1,function(key,value){if(key==="user") value="huahua";console.log(key);//user age jobreturn value;});console.log(parseJSON);//Object{user:"huahua",age:38,job:"CEO"}var parseArr=JSON.parse(json2);console.log(json1);//{user:"huahua",age:38,job:"CEO"}console.log(typeof json1);//stringconsole.log(parseJSON.user);//huahuaconsole.log(json2);//["feng",20,"Programmer"]console.log(typeof json2);

轉載于:https://www.cnblogs.com/sunshinegirl-7/p/4976467.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256413.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256413.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256413.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

機器學習——人工神經網絡之發展歷史(神經元數學模型、感知器算法)

目錄 一、神經元的數學模型 ? 二、感知器算法(SVM算法前身) 1、目的 2、流程 >>>問題1:下圖w和b的調整是什么意思? 3、算法的有效性驗證 1)原算法 2)增廣矩陣 3)修改后的算法…

PHP 基礎知識-數組

PHP 的數組主要分為: 索引數組 - 帶有數字索引的數組關聯數組 - 帶有指定鍵的數組多維數組 - 包含一個或多個數組的數組 索引數組:有兩種創建索引數組的方法:索引是自動分配的(索引從 0 開始): 第一…

打開word2016總是出現很抱歉,此功能看似中斷需要修復。。問題解決辦法

第一步 打開運行窗口,在電腦桌面左下角有個圓圈點擊進去,輸入regedit,即可進入。 第二步 打開HKEY_CURRENT_USER中的SOFTWARE 第三步 找到HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Word\Options項如圖紅色箭頭標示。然后點擊O…

機器學習——人工神經網絡之多層神經網絡(多層與三層)

目錄 一、多層神經網絡 1、多層神經網絡數學模型 2、數學模型中的非線性函數fai 1)非線性函數fai存在的意義 2)非線性函數fai具體是什么? 3、多層神經網絡與單層神經網絡的區別與改進 1)單層神經網絡數學模型 2&#xff0…

noip2012-day2-t2

【問題描述】 在大學期間,經常需要租借教室。大到院系舉辦活動,小到學習小組自習討論,都需要向學校申請借教室。教室的大小功能不同,借教室人的身份不同,借教室的手續也不一樣。 面對海量租借教室的信息,我…

機器學習——人工神經網絡之后向傳播算法(BP算法)

目錄 一、后向傳播算法的本質——梯度下降法求局部極值 1、w迭代公式的合理性

獲取視圖的寬高

1 view.measure(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 2 int width view.getMeasuredWidth(); 3 int height view.getMeasuredHeight(); 轉載于:https://www.cnblogs.com/cmgrass/p/4978222.html

排序算法02--冒泡排序

思路:冒泡排序 就是把大的數一個個沉到下面,當然也可以是把小的數一個個浮到上面。 在最外層需要比較n-1次,因為n-1個大的數被沉到了下面,剩下一個自然就是最小的數了。 在這n-1次的里層,還需要亮亮相互比較&#xff0…

機器學習——人工神經網絡之參數設置(BP算法)

目錄 一、復習(BP算法) 二、訓練模型的建議 三、參數設置內容 1、隨機梯度下降(SGD)

關于▲的各種交點

對于△ABC證明: ①三角形的三條中線交于一點: 等腰三角形:作中線BD、CE與AC、AB交于D、E,相交于O,連接AO并延長交BC于F; 證△ABD全等于△ACE,再證△EBO全等于△D…

javaScript獲取url中的參數

var urlTools {//獲取RUL參數值getUrlParam: function(name) { /*?videoIdidentification */var params decodeURI(window.location.search); /* 截取?號后面的部分 index.html?actdoctor,截取后的字符串就是?actdoctor */var reg …

機器學習——支持向量機SVMpython實現

一、SVM理論 可見以下文章: 《機器學習——支持向量機SVM之線性模型》 《機器學習——支持向量機SVM之非線性模型低維到高維映射》 《機器學習——支持向量機SVM之非線性模型原問題與對偶問題》 《機器學習——支持向量機SVM之非線性模型原問題轉化為對偶問題》…

瑣碎易錯點

1.font-size 設置的是字體的高 2.瀏覽器內核: 主流瀏覽器   內核 IE       trident Firfox     Gecko Chorme    Webkit(原來)/blink(現在) Safari     Webkit(蘋果公司獨立研發的&a…

Python安裝Jupyter Notebook配置使用教程

原文見:https://blog.csdn.net/qq_27825451/article/details/84427269 一、什么是jupyter 1、簡介: jupyter notebook是一種 Web 應用,能讓用戶將說明文本、數學方程、代碼和可視化內容全部組合到一個易于共享的文檔中。它可以直接在代碼旁…

ExtJS4.2學習(10)分組表格控件--GroupingGrid(轉)

鳴謝網址:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-11-17/179.html --------------------------------------------------------------------------------------------- 分組表格控件在我們的開發中經常被用到,GroupingGrid…

九個Console命令,讓js調試更簡單

一、顯示信息的命令 1: <!DOCTYPE html>2: <html>3: <head>4: <title>常用console命令</title>5: <meta http-equiv"Content-Type" content"text/html; charsetutf-8" />6: </head>7: <body>8: …

numpy——axis

size()和max()中的含義 以前我理解axis0代表行&#xff0c;axis1代表列&#xff1b; 但是這種含義在函數size()和max()中恰恰相反&#xff1b; 其實不是這樣的&#xff0c;我們回到單詞axis本身&#xff0c;它的意思是“軸”&#xff0c;沒錯軸就是代表一個方向&#xff0c;像…

Android ListView幾個重要屬性

1、transciptMode屬性&#xff0c;需要用ListView或者其它顯示大量Items的控件實時跟蹤或者查看信息&#xff0c;并且希望最新的條目可以自動滾動到可視范圍內。通過設置的控件transcriptMode屬性可以將Android平臺的控件&#xff08;支持ScrollBar&#xff09;自動滑動到最底部…

Halcon例程(基于GMM模型的分類)詳解 —— classify_citrus_fruits.hdev

一、例程簡介 該例程比較有代表性&#xff0c;屬于Halcon里的分類方法之一&#xff0c;直接調用Halcon封裝好的GMM分類器&#xff08;高斯混合模型&#xff09;對橘子和檸檬進行分類。GMM屬于概率分類方法&#xff0c;屬于P(Y|X)&#xff0c;通過對樣本的概率密度分布進行估計…

正則表達式匹配不包含特定字符串解決匹配溢出問題

匹配溢出問題在正則表達式當中算是比較常見的問題&#xff0c;它常常導致我們匹配結果莫名其妙的出錯&#xff0c;本文專門為你講解如何通過匹配不包含特定字符串的方法來解決這類問題。 那么&#xff0c;什么是匹配溢出呢&#xff1f; 下面我們來看個例子&#xff1a; 源文本&…