溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

詳解JavaScript基礎(chǔ)知識(JSON、Function對象、原型、引用類型)

發(fā)布時間:2020-10-06 20:43:17 來源:腳本之家 閱讀:188 作者:灰姑娘的冰眸 欄目:web開發(fā)

1、JSON

詳解JavaScript基礎(chǔ)知識(JSON、Function對象、原型、引用類型)

概念:JavaScript 對象表示法(JavaScript Object Notation),是一種輕量級的數(shù)據(jù)交換格式

特點:易于程序員編寫和查看;易于計算機解析和生成

數(shù)據(jù)結(jié)構(gòu):Object對象格式   { key: value , key: value }

Array數(shù)組格式   [ value , value ]

Eg:  var json = ‘ { “   ” : ‘'  ‘' } '    (內(nèi)部雙引號,外部單引號)

 * JSON - 支持獨立的".json"文件;   允許嵌套

JSON格式在主流開發(fā)語言中幾乎都支持--- 各個語法語言的共識就是字符串

JSON中的字符串只能使用雙引號 

* 支持的數(shù)據(jù)類型: string; number; boolean; null; object; array

     轉(zhuǎn)換JSON對象與字符串

轉(zhuǎn)換為JSON對象: JSON.parse(對象)  ---(服務(wù)器=>客戶端), 解析JSON字符串,

轉(zhuǎn)換為JSON字符串:JSON.stringify(字符串)  ---- (客戶端=>服務(wù)器),

2、Function對象

   函數(shù)與Function對象:

Function類型是JavaScript提供的引用類型之一;通過Function類型創(chuàng)建了一個Function類型的對象,該對象實際是一個[函數(shù)]。

var 對象名 = new Object( );   ---創(chuàng)建對象

var 函數(shù)名 = new Function( );   // function anonymous( ){}

【在JavaScript 中,所有函數(shù)是Function的對象】

var 函數(shù)名 = new Function(參數(shù),函數(shù)體);

括號( )里面最后一個參數(shù),識別為函數(shù)體, 除此都是形參。---不建議

   構(gòu)造函數(shù):

作用:為了創(chuàng)建對象(工廠方式)

語法結(jié)構(gòu):

function 構(gòu)造函數(shù)名稱(形參){
 this.屬性名 = 屬性值;    ---- this的含義 -> 指的是創(chuàng)建的對象
 this.方法名 = function( ){ }   
}
var 對象名 = new 構(gòu)造函數(shù)名稱( );

3、原型

在 JavaScript 中,函數(shù)是一個包含屬性和方法的 Function 類型的對象。

屬性(Prototype) 在函數(shù)定義時就已經(jīng)存在,是Function對象(即函數(shù))預(yù)定義的一個屬性;它的初始值是一個空對象。在 JavaScript 中沒有定義函數(shù)的原型類型,所以原型可以是任何類型。

原型是用于保存對象的共享屬性和方法,原型的屬性和方法并不影響函數(shù)本身屬性和方法。

²  顯式原型 - Function 的 prototype

在真實的開發(fā)環(huán)境中使用

²  隱式原型 - Function 的 __proto__

用于開發(fā)過程中的測試,不能被使用在真實的開發(fā)環(huán)境中

4、引用類型

   數(shù)據(jù)類型:

Number-通過創(chuàng)建對象方式定義數(shù)字;      String-通過創(chuàng)建對象方式定義數(shù)字;

Boolean-通過創(chuàng)建對象方式定義數(shù)字;

   Date類型

作用:獲取常規(guī)的日期+時間

getFullYear( ) : 獲取年份;   getMonth( ) : 獲取月份;     getDate( ):獲取日期

getTime ( ):距離1970年1月1日到目前的時間和日期 [利用毫秒值進行時間的計算;實現(xiàn)時間戳(標(biāo)識)]

eg: 日期格式為 YYYY年MM月DD日的當(dāng)前時間

var date = new Date( );
console.log(date.getFullYear( ) + '年' + date.getMonth( ) + '月' + date.getDay( ) + '日');

  Math類型

屬性:PI - 圓周率                              注:不需要創(chuàng)建對象

方法:對數(shù)字的處理

ceil(x):向上取整即增;       floor(x):向下取整即舍;     round(x):四舍五入

pow(x1, x2):n1的n2次方     random( ):生成0-1之間的隨機數(shù)

eg:0-100隨機數(shù)   console.log(Math.random( )*100);     

1-100隨機整數(shù)  console.log(Math.random( )*99+1);

20%概率執(zhí)行一,50%概率執(zhí)行二  if( num <= 0.2 ){

                                      } else {

                                    }

   Global類型

全局對象:全局屬性(Infinity、NaN、undefined)、全局方法,在JavaScript中任何位置都可調(diào)用。                    

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI