詳解JavaScript基礎知識(JSON、Function對象、原型、參考型別),jsonfunction
1、JSON
概念:JavaScript 物件標記法(JavaScript Object Notation),是一種輕量級的資料交換格式
特點:易於程式員編寫和查看;易於電腦解析和產生
資料結構:Object對象格式 { key: value , key: value }
Array數組格式 [ value , value ]
Eg: var json = ‘ { “ ” : ‘' ‘' } ' (內部雙引號,外部單引號)
* JSON - 支援獨立的".json"檔案; 允許嵌套
JSON格式在主流開發語言中幾乎都支援--- 各個文法語言的共識就是字串
JSON中的字串只能使用雙引號
* 支援的資料類型: string; number; boolean; null; object; array
轉換JSON對象與字串
轉換為JSON對象: JSON.parse(對象) ---(伺服器=>用戶端), 解析JSON字串,
轉換為JSON字串:JSON.stringify(字串) ---- (用戶端=>伺服器),
2、Function對象
函數與Function對象:
Function類型是JavaScript提供的參考型別之一;通過Function類型建立了一個Function類型的對象,該對象實際是一個[函數]。
var 對象名 = new Object( ); ---建立對象
var 函數名 = new Function( ); // function anonymous( ){}
【在JavaScript 中,所有函數是Function的對象】
var 函數名 = new Function(參數,函數體);
括弧( )裡面最後一個參數,識別為函數體, 除此都是形參。---不建議
建構函式:
作用:為了建立對象(工廠方式)
文法結構:
function 建構函式名稱(形參){ this.屬性名稱 = 屬性值; ---- this的含義 -> 指的是建立的對象 this.方法名 = function( ){ } }var 對象名 = new 建構函式名稱( );
3、原型
在 JavaScript 中,函數是一個包含屬性和方法的 Function 類型的對象。
屬性(Prototype) 在函數定義時就已經存在,是Function對象(即函數)預定義的一個屬性;它的初始值是一個Null 物件。在 JavaScript 中沒有定義函數的原型類型,所以原型可以是任何類型。
原型是用於儲存對象的共用屬性和方法,原型的屬性和方法並不影響函數本身屬性和方法。
² 顯式原型 - Function 的 prototype
在真實的開發環境中使用
² 隱式原型 - Function 的 __proto__
用於開發過程中的測試,不能被使用在真實的開發環境中
4、參考型別
資料類型:
Number-通過建立對象方式定義數字; String-通過建立對象方式定義數字;
Boolean-通過建立對象方式定義數字;
Date類型
作用:擷取常規的日期+時間
getFullYear( ) : 擷取年份; getMonth( ) : 擷取月份; getDate( ):擷取日期
getTime ( ):距離1970年1月1日到目前的時間和日期 [利用毫秒值進行時間的計算;實現時間戳記(標識)]
eg: 日期格式為 YYYY年MM月DD日的目前時間
var date = new Date( );console.log(date.getFullYear( ) + '年' + date.getMonth( ) + '月' + date.getDay( ) + '日');
Math類型
屬性:PI - 圓周率 註:不需要建立對象
方法:對數位處理
ceil(x):向上取整即增; floor(x):向下取整即舍; round(x):四捨五入
pow(x1, x2):n1的n2次方 random( ):產生0-1之間的隨機數
eg:0-100隨機數 console.log(Math.random( )*100);
1-100隨機整數 console.log(Math.random( )*99+1);
20%機率執行一,50%機率執行二 if( num <= 0.2 ){
} else {
}
Global類型
全域對象:全域屬性(Infinity、NaN、undefined)、全域方法,在JavaScript中任何位置都可調用。