欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

什么是MEAN?JavaScript編程中的MEAN是什么意思?

 更新時(shí)間:2014年12月18日 08:57:22   投稿:junjie  
這篇文章主要介紹了什么是MEAN?JavaScript編程中的MEAN是什么意思?,跟lampp一樣,MEAN是指現(xiàn)代web應(yīng)用全棧開發(fā)工具一個(gè)組合,需要的朋友可以參考下

前段日子看到一篇文章提到MEAN這個(gè)詞,什么是MEAN?

其實(shí)MENA就是 MongoDB(非關(guān)系數(shù)據(jù)庫) + Express(模板引擎) + AngularJS(MVC javascript庫) + NodeJS(服務(wù)器腳本)的簡(jiǎn)稱。

它們共同構(gòu)造 基于 javascript 的 現(xiàn)代web應(yīng)用全棧開發(fā)工具。

MongoDB:

是一種強(qiáng)大、靈活、可擴(kuò)展的數(shù)據(jù)存儲(chǔ)方式。

它擴(kuò)展了關(guān)系型數(shù)據(jù)庫的眾多有用功能,如輔助索引、范圍查詢、和排序、它內(nèi)置的對(duì)MapReduce式聚合的支持和對(duì)地理空間索引的支持。

它將傳統(tǒng)數(shù)據(jù)庫行(row)的概念換成,文檔(document)模型,所謂文檔模型其實(shí)就是一個(gè)數(shù)組對(duì)象。

我們來看一下文檔模型:

{“_id” : 1 , “greeting” : “hello,world!” , “foo” : 3}

每個(gè)文檔都會(huì)帶有一個(gè)_id的字段,該文檔模型代表數(shù)據(jù)庫中有一條記錄,包含字段 greeting , foo 和  _id;

Express:

關(guān)于末班引擎Express,我想用按句話來描述它:

是一個(gè)簡(jiǎn)潔而靈活的node.jsWeb應(yīng)用框架, 提供一系列強(qiáng)大特性幫助你創(chuàng)建各種Web應(yīng)用。

豐富的HTTP工具以及來自Connect框架的中間件隨取隨用,創(chuàng)建強(qiáng)健、友好的API變得快速又簡(jiǎn)單

Express 不對(duì) node.js 已有的特性進(jìn)行二次抽象,我們只是在它之上擴(kuò)展了Web應(yīng)用所需的功能

AngularJS:

AngularJS是由google開發(fā)的一款js庫,它與backone一樣同為MVC腳本庫。

幾乎每種語言的第一課都是講hello world,按照慣例我們也來一個(gè):

復(fù)制代碼 代碼如下:

<!doctype html>
<html ng-app>
<head>
 <script src="http://code.angularjs.org/angular-1.0.1.min.js"></script>
</head>
<body>
 Hello {{'World'}}!
</body>
</html>

<html ng-app>

聲明了該頁面使用angularJS,當(dāng)加載該頁時(shí),標(biāo)記ng-app告訴AngularJS處理整個(gè)HTML頁并引導(dǎo)應(yīng)用。
這個(gè)例子在頁面打印hello world,有的人就奇怪了,hello world搞這么復(fù)雜干嘛。

其實(shí){{}}里內(nèi)容是一種數(shù)據(jù)綁定的形式,看完下個(gè)例子你就知道它的強(qiáng)大之處了。

我門接著看下一個(gè)例子:

復(fù)制代碼 代碼如下:

<!doctype html>
<html ng-app>
<head>
 <script src="angular-1.0.1.min.js"></script>
</head>
<body>
 Your name: <input type="text" ng-model="yourname" placeholder="World">
 <hr>
 Hello {{yourname || 'World'}}!
</body>
</html>

在瀏覽器里打開這個(gè)頁面,然后試著在輸入框輸入隨意字符,你會(huì)發(fā)現(xiàn)這些輸入的字符立即更新顯示在問候語中。 是不是很神奇?

的念。 輸入框的任何更改會(huì)立即反映到模型變量(一個(gè)方向),模型變量的任何更改都會(huì)立即反映到問候語文本中(另一方向)。

該示例有一下幾點(diǎn)重要的注意事項(xiàng):

1. 文本輸入指令<input ng-model=”yourname” />綁定到一個(gè)叫yourname 的模型變量。

2. 雙大括號(hào)標(biāo)記將yourname 模型變量添加到問候語文本。

3. 你不需要為該應(yīng)用另外注冊(cè)一個(gè)事件偵聽器或添加事件處理程序!

NodeJS

是由Ryan Dahl開發(fā)的一款高性能服務(wù)器js平臺(tái)。

它是集于V8引擎開發(fā)的,V8引擎是google開發(fā)的 javascript引擎,不是汽車的V8引擎 – -是一款高性能引擎,它的性能遠(yuǎn)遠(yuǎn)超越其他腳本語言。

nodeJS使用的是 異步I / O的通信方式,這種方式和AJAX很類似:

復(fù)制代碼 代碼如下:

$.post("url", {title:"post請(qǐng)求"}, function(data){
 console.log("收到響應(yīng)");
})
console.log("發(fā)送ajax結(jié)束");

nodejs的請(qǐng)求方式:

復(fù)制代碼 代碼如下:

var fs = require('fs');
fs.readFile("/path", function(err, file){
 console.log("讀取文件完成");
});
console.log("發(fā)起讀取文件");

我們?cè)倏聪旅孢@個(gè)例子:

當(dāng)同時(shí)執(zhí)行兩個(gè)請(qǐng)求的時(shí)候,總耗時(shí)取決于耗時(shí)最多的那個(gè),而不是兩個(gè)請(qǐng)求的耗時(shí)總和,因?yàn)樗麄儍蓚€(gè)是并行的。

復(fù)制代碼 代碼如下:

//第一個(gè)請(qǐng)求
var fs = require('fs');
fs.readFile("/path1", function(err, file){
 console.log("讀取文件1完成");
});
//第二個(gè)請(qǐng)求
fs.readFile("/path2", function(err, file){
 console.log("讀取文件2完成");
});
console.log("發(fā)起讀取文件");

nodejs高性能的另一個(gè)原因是基于事件驅(qū)動(dòng):

node將前端瀏覽器中的 事件 引入后端,配合異步I/O,將事件點(diǎn)暴露給業(yè)務(wù)邏輯。

事件的變成方式具有輕量級(jí),松耦合,只關(guān)注事物點(diǎn)等優(yōu)勢(shì)。

相關(guān)文章

  • node.js 微信開發(fā)之定時(shí)獲取access_token

    node.js 微信開發(fā)之定時(shí)獲取access_token

    本文給大家分享的是在使用node.js做微信開發(fā)的過程中如何定時(shí)獲取access_token的方法,有需要的小伙伴可以參考下
    2020-02-02
  • 在Node.js中使用TypeScript的方法示例

    在Node.js中使用TypeScript的方法示例

    在前端開發(fā)中,隨著TypeScript的不斷普及,越來越多的開發(fā)者使用TypeScript進(jìn)行開發(fā),然而,在后端開發(fā)中,在Node.js中使用 TypeScript還是相對(duì)較少見的,這篇文章將介紹如何在Node.js中配置TypeScript ,以及如何使用TypeScript來開發(fā)高質(zhì)量的應(yīng)用程序
    2023-06-06
  • VsCode無法識(shí)別node問題解決過程

    VsCode無法識(shí)別node問題解決過程

    這篇文章主要給大家介紹了關(guān)于VsCode無法識(shí)別node問題解決的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-07-07
  • nodejs中的fiber(纖程)庫詳解

    nodejs中的fiber(纖程)庫詳解

    這篇文章主要介紹了nodejs中的fiber(纖程)庫詳解,本文講解了node-fibers的安裝、API介紹、方法使用示例等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • 教你如何在Node.js中使用jQuery

    教你如何在Node.js中使用jQuery

    本文給大家分享的是如何在Node.js中使用jQuery的方法,包含步驟以及出錯(cuò)的處理,非常的詳細(xì),有需要的小伙伴可以參考下
    2016-08-08
  • express提供http服務(wù)功能實(shí)現(xiàn)示例

    express提供http服務(wù)功能實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了express提供http服務(wù)功能實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • Node.js本地搭建簡(jiǎn)單頁面小游戲的過程

    Node.js本地搭建簡(jiǎn)單頁面小游戲的過程

    Node.js是能夠在服務(wù)器端運(yùn)行 JavaScript 的開放源代碼、跨平臺(tái)運(yùn)行環(huán)境,Node.js 大部分基本模塊都用 JavaScript 語言編寫,下面將介紹如何簡(jiǎn)單幾步實(shí)現(xiàn)遠(yuǎn)程公共網(wǎng)絡(luò)下訪問windwos node.js的服務(wù)端
    2024-01-01
  • Node.js模塊全局安裝路徑配置方法

    Node.js模塊全局安裝路徑配置方法

    今天小編就為大家分享一篇Node.js模塊全局安裝路徑配置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • nodejs教程之異步I/O

    nodejs教程之異步I/O

    nodejs的核心之一就是非阻塞的異步IO,于是想知道它是怎么實(shí)現(xiàn)的,經(jīng)過一份研究,找到些答案,在此跟大家分享下。
    2014-11-11
  • 使用express獲取微信小程序二維碼小記

    使用express獲取微信小程序二維碼小記

    這篇文章主要介紹了使用express獲取微信小程序二維碼小記,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評(píng)論