Head First Javascript 1

深入淺出javascipt

網頁的架構
structure
content
layout
style

HTML+CSS+Javascript

按下按鈕檢查
從twitter擷取推文並且顯示
計算
回應
繪圖
通訊
警示
修改
更新
變化

1.撰寫js程式碼-->2.載入-->3.執行

瀏覽器會為html建立可以給javascript 使用的object model

範例1:http://www.ap102.cf/2016/05/javascript-1.html


Q&A
1.Javascript是一個有點弱的語言嗎?

不但不是,而且現在在2016他是一個火紅的語言

2.Javascript與Java有關嗎?

JS只是想要用java的名氣炒新聞
就像很多嫩模想用有錢人的名氣幫忙炒新聞一樣

3.JavaScript  是建立動態語言的最佳方式嗎? flash怎麼樣?

因為賈伯斯基於flash需要安裝外掛程式
以及flash龐大的空間
因此大家基於建立共通的標準
而開始支持HTML5
甚至連flash的公司adobe都即將淘汰flash

4.photoshop裡面可以使用javascript?


是的
越來越多應用程式
包括圖形 音樂 甚至是伺服器的程式設計
甚至可以應用在網頁以外的地方

還可以使用在openoffice
Google apps


5.其他語言都是採用編譯的方式,但為何javascript不是?

使用c c++ java這類傳統的語言
需要先編譯程式碼

編譯程式碼可以優化執行的蕭能
命令稿語言則是採用直譯的模式
會逐行執行

他較不重視執行時期的效能
而將重心擺在原型設計
互動編碼,與靈活性等工作上

直譯式語言可以執行動態編譯
這也是現在瀏覽器使用JS的方式


基本上
interpret
evaluate
execute
就目的來說都表達同一件事情,但在不同情境下有不太一樣的含義


JavaScript的歷史:https://zh.wikipedia.org/wiki/JavaScript
由NetScape開發,目前由ECMA維護


一.JavaScript的變數命名

value,string,booleans

var value =0;
var name="obov";
var bool=true;

也可以不給初值
var loser;

var sow={name:"obov", money: 8787};
1呼叫方式
sow.name

忽略了var JS也不會抱怨


二.保留字(變數避免的字)

break
case
catch
class
const
continue
debugger



Q&A

1.什麼是保留字

reserved name
就是JS內建保留的一些詞
如果與變數同時出現會造成瀏覽器的混肴

2.如果變數名稱包含保留字可以嗎?

可以
但是容易造成混淆
例如ifOnly容易混淆
或者elze容易與else混肴

3.JS會區分大小寫嗎?



三.特殊註解

每一句以分號一樣
大小寫有分別
不一定要給變數值
註解以//表示
空白符號無關緊要
字串要加上引號

變數不可以使用% 不可以有空格 不可以有引號 例如:mc'hotdog


四.迴圈

while
for
for in 
forEach

五.判斷句



Q&A
1.什麼是程式碼區塊

就是大括號內的一個群組
會一同被執行


2.程式碼條件是只有一個變數,有時候是一個字串 而不是布林值
JS對true與false的認定相當寬鬆
只要()非空就被認為是true

3.運算是會導致字串與布林值以外的結果
稍後會介紹
陣列
物件
函式
這幾個更複雜的使用功能


4.布林的由來
boolean logic以英國數學家george boole喬治布爾
的名字來命名

六.與使用者接觸與溝通

建立一段提示訊息
alert功能

直接寫到你的文件
document.write
把網頁視為一份文件
但這是一種不好的格式

使用控制台
使用console.log
使用這個來找出錯誤,將錯誤印出

直接操作文件(這是目標)
使用這個方法來與使用者互動
使用瀏覽器的文件物件模型
讀取,修改,操作頁面

七.使用console.log

Q&A
1.console.log是什麼?

console是物件
log是屬性
可以傳遞到訊息到控制台(開發者模式的console)

2.除了記錄訊息還可以幹嘛?

他不算是正式規範的一部份
但是瀏覽器支援一種除錯功能

3.控制台在哪裡?

chrome-->view-->Developer-->Javascript console


八.兩種方式使用javascript

1.內嵌入在html
2.建立外部連結
3.不可以同時使用兩種方式在同一段程式碼


dynamic types
first-class functions
closure



快速瀏覽
1.變數命名方式
2.保留字
3.註解與被拒絕的變數命名
4.迴圈
5.判斷句
6.文件物件模型 alert document.write console.og

document.write('來一次')
上面這一行會把字寫進瀏覽器

7.使用console.log
8.兩種方式使用javascript














Comments

Popular posts from this blog

MEGA 暫存檔案刪除

IOS GCD多執行緒

利用CMD指令強制刪除