Time of Update: 2018-07-26
AMD是"Asynchronous Module Definition"的縮寫,意思就是"非同步模組定義". AMD定義了我們所用的模組都是是非同步載入的,所以我們要將相依模組的程式碼片段要放在一個回呼函數中,當非同步載入模組完畢後(也就是此模組已可用時)觸發回呼函數 常用的AMD庫有require.js、sea.js 點擊這裡這裡有一個我自己的樣本層級的AMD實現
Time of Update: 2018-07-26
例子: <script>var a = 1;var b = 2;(function(){var b = 3;a += b;})();alert(a); // 4alert(b); // 2</script> 說明匿名函數已經執行過了-->這就是匿名函數的自執行 自執行的匿名函數 1. 什麼是自執行的匿名函數? 它是指形如這樣的函數: (function {
Time of Update: 2018-07-26
我們知道,鍵盤上的每個鍵都對應著一個碼,敲擊鍵盤後,實際上是電腦硬體通過邏輯門電路產生位元字來表示這個碼,然後傳遞給CPU。 下面總結下javascript 支援的char codes: Key Code backspace 8
Time of Update: 2018-07-26
一、原始寫法 模組就是實現特定功能的一組方法。 只要把不同的函數(以及選項組的變數)簡單地放在一起,就算是一個模組。 function m1(){ //... } function m2(){ //... } 上面的函數m1()和m2(),組成一個模組。使用的時候,直接調用就行了。 這種做法的缺點很明顯:"汙染"了全域變數,無法保證不與其他模組發生變數名衝突,而且模組成員之間看不出直接關係。
Time of Update: 2018-07-26
上一篇關於javascript匿名函數的部落格:http://blog.csdn.net/wusuopuBUPT/article/details/14522631 首先列舉下常見的幾種聲明javascript函數的方法: function demo(){ // 函數主體部分} 它的實質,是將函數主體賦值給了demo變數,這個函數主體是: function(){ // 函數主體部分} 所以,demo() 函數也可以這樣定義: var
Time of Update: 2018-07-26
非同步模式在web編程中變得越來越重要,對於web主流語言Javascript來說,這種模式實現起來不是很利索,為此,許多Javascript庫(比如 jQuery和Dojo)添加了一種稱為promise的抽象(有時也稱之為deferred)。通過這些庫,開發人員能夠在實際編程中使用 promise模式。IE官方部落格最近發表了一篇文章,詳細講述了如何使用XMLHttpRequest2來實踐promise模式。我們來瞭解一下相關的概念和應用。
Time of Update: 2018-07-26
能不能替代這個問題其實對開發人員能有多少影響呢?首先排除掉Go,這個東西是做服務端的,定位也是系統編程。主要說說dart: dart這個語言最關鍵的地方其實是兩個:1.相似性;2.dart2JS。 相似性:
Time of Update: 2018-07-26
一、js的模組化規範: 伺服器端:commonjs 瀏覽器端:AMD("Asynchronous Module Definition"的縮寫,意思就是"非同步模組定義") 二、為什麼採用AMD 如下代碼 var math = require('math'); math.add(2, 3);必須等待math.js載入完成,否則會出現載入時間很長現象 三、define define(id?, dependencies?,
Time of Update: 2018-07-26
Javascript模組化編程(二):AMD規範 作者: 阮一峰 日期: 2012年10月30日
Time of Update: 2018-07-26
十、層 1. 層內放置外部檔案(External Files Within Layers) Q:我可以在將外部的HTML檔案作為頁面的一部分顯示嗎。 A:可以,你可以通過使用下面方法實現: LAYER或者ILAYER標記,SRC=FILENAME.HTM(在Netscape4中) IFRAME標記,SRC=FILENAME.HTM(在Explore4+ 和 Netscape 6中)
Time of Update: 2018-07-26
JavaScript語言有多種方式,建立互動式網站,Web應用程式。基本的JavaScript架構是預先寫好的JavaScript代碼集。這些JavaScript架構也被稱為JavaScript庫,開發這種程式設計語言在很多方面的應用。它是通過使用JavaScript代碼同這些JavaScript架構寫的而不是寫單獨成為更多障礙,並期待更多的時間每次代碼的同一行的Web應用程式的開發更容易。
Time of Update: 2018-07-26
轉載連結 本文轉自阮一峰老師的技術部落格:Javascript模組化編程:模組的寫法 前言 Javascript模組化編程,已經成為一個迫切的需求。理想情況下,開發人員只需要實現核心的商務邏輯,其他都可以載入別人寫好的模組。 但是,Javascript不是一種模組化程式設計語言,它不支援“類”,更不用說“模組”了。
Time of Update: 2018-07-26
這個系列的第一部分和第二部分,介紹了Javascript模組原型和理論概念,今天介紹如何將它們用於實戰。 我採用的是一個非常流行的庫require.js。 一、為什麼要用require.js。 最早的時候,所有Javascript代碼都寫在一個檔案裡面,只要載入這一個檔案就夠了。後來,代碼越來越多,一個檔案不夠了,必須分成多個檔案,依次載入。下面的網頁代碼,相信很多人都見過。 複製代碼 運行代碼 編輯代碼
Time of Update: 2018-07-26
Javascript模組化編程(三):require.js的用法
Time of Update: 2018-07-26
第一部分,ES7 中引入 async-await 原文地址 http://www.cnblogs.com/wangfupeng1988/p/6532734.html 未經作者允許,不得轉載~ 前面介紹完了Generator的非同步處理,可以說是跌跌撞撞,經過各種基礎介紹和封裝,好容易出了一個比較簡潔的非同步處理方案,學習成本非常高————這顯然不是我們想要的。 因此,還未發布的 ES7
Time of Update: 2018-07-26
七、Ajax問題 1. Ajax:非同步JavaScript和XML(Ajax: Asynchronous JavaScript and XML) Q:Ajax這個流行詞到底是什麼意思呀。 A:Ajax這個短語最初有Jesse James Garrett提出,他是Adaptive Path的共同創始人。縮減語Ajax(通常只有第一個字母A大寫)代表非同步JavaScript和XML(Asynchronous JavaScript and
Time of Update: 2018-07-26
一、為什麼要用require.js。 最早的時候,所有Javascript代碼都寫在一個檔案裡面,只要載入這一個檔案就夠了。後來,代碼越來越多,一個檔案不夠了,必須分成多個檔案,依次載入。下面的網頁代碼,相信很多人都見過。 <script src="1.js"></script> <script src="2.js"></script> <script
Time of Update: 2018-07-26
八、架構 1. 我的頁面在架構裡嗎。(Is my page framed?) Q:我的頁面是架構中的頁面呢,還是瀏覽器的頂層視窗呢。 A:要測試頁面是否在架構中,可以使用下面的條件操作符: if (self.location!=top.location) // if yes, you're framedif (self.location==top.location) // here you aren't framed
Time of Update: 2018-07-26
我原來用C語言,藉助curses庫實現了linux 終端下的貪吃蛇遊戲。 這個javascript版本的貪吃蛇是http://www.veryhuo.com/game/tanchishe.html 的學習筆記,實現的原理和C版本基本一樣。 這裡最為重要的是用gridElems這個二維數組來表示20*20的格子(實際上是html的td元素),通過gridElems[x][y].className控制td元素的css. 再者就是snake運動中的判斷。 ------------
Time of Update: 2018-07-26
我的理解:javascript 函數工作在它定義的範圍,而不是它執行的範圍,在它定義的範圍內定義的變數,相對於這個函數而言,是全域變數, 這就是所謂的“閉包” 看一個例子:(你能想到輸出是什麼嗎。) <script>function setupSomeGlobals() {var num = 666;gAlertNumber = function(){alert(num);};gIncreaseNumber = function() {alert(num++)