日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

js基本包装类型和引用类型

發(fā)布時(shí)間:2023/12/2 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 js基本包装类型和引用类型 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

回顧

1.什么是基本類型?

共5個(gè)。boolean,string,number,null,undefined.

?

2.什么是引用類型?

引用類型的值是對(duì)象,保存在堆內(nèi)存中;

引用類型的變量實(shí)際上是一個(gè)指針,它保存在棧中,指向堆內(nèi)存中的對(duì)象;

包括:object? array? date? regexp? function

?

3.什么是基本包裝類型?

既是基本,也是引用,所以叫做基本引用類型。

基本包裝類型是對(duì)基本數(shù)據(jù)類型的封裝,封裝后即具有基本類型的功能,也有各自的特殊行為(方法)

?

4.和基本類型有什么區(qū)別?

區(qū)別在于對(duì)象的'生存期'。基本包裝類型只存在于代碼的執(zhí)行瞬間,然后立即被銷毀。

?

Boolean類型:

  typeof對(duì)基本類型返回“boolean”,而對(duì)引用類型返回“object”。

  其次,由于Boolean對(duì)象是Boolean類型的實(shí)例,所以使用instanceof操作符測(cè)試Boolean對(duì)象會(huì)返回true,而測(cè)試基本類型的布爾值則返回false。

  建議永遠(yuǎn)不要使用Boolean對(duì)象!

?

Number類型:

  創(chuàng)建number對(duì)象,可以在調(diào)用Number構(gòu)造函數(shù)時(shí)向其中傳遞相應(yīng)的數(shù)值:

var numberObject = new Number(10);

  Number類型還提供一些用于將數(shù)值格式化為字符串的方法:toFixed()方法

  

1.toFixed()方法會(huì)按照指定的小數(shù)位返回?cái)?shù)值的字符串表示:(即以0填補(bǔ)必要的小數(shù)位)

var num=10; alert(num.toFixed(2)); //"10.00

  

2.toExponential(),該方法返回以指數(shù)表示法(e表示法)表示的數(shù)值的字符串形式。也可以接收一個(gè)參數(shù),指定輸出結(jié)果中的小數(shù)位數(shù)。

?

3.toPrecision()方法

可能會(huì)返回固定大小格式,也可能返回指數(shù)(exponential)格式;具體規(guī)則是看哪種格式合適。可以接收一個(gè)參數(shù),表示數(shù)值的所有數(shù)字的位數(shù)(不包括指數(shù)部分):

var num = 99; alert(num.toPrecision(1));//"1e 2" alert(num.toPrecision(2));//"99" alert(num.toPrecision(3));//"99.0"

注意:typeof 測(cè)試基本類型,返回number;測(cè)試number對(duì)象時(shí),返回“object”。number對(duì)象是number類型的實(shí)例,而基本類型的數(shù)值則不是。

?

String()方法:

var stringObject = new String("hello world");

//length屬性
var stringValue = "hello world";
alert(stringValue.length); //"11"

1.字符方法:

  兩個(gè):charAt()和charCodeAt()

//charAt()方法以單字符字符串的形式返回給定位置的那個(gè)字符
var
stringValue = "hello world"; alert(stringValue.charAt(1)); //"e" //【字符編碼形式返回給定位置的字符
var
stringValue = "hello world"; alert(stringValue.charCodeAt(1)); //"101"

2.字符串操作方法

  concat():拼接字符串,返回拼接后的新字符串

var stringValue = "hello "; var result = stringValue.concat("world"); alert(result); //hello world alert(stringValue); //hello //可以接收任意多個(gè)參數(shù),即拼接任意多個(gè)字符串
var
stringValue = "hello "; var result = stringValue.concat("world","!");alert(result); alert(stringValue);

  str(),substring(),substr():

  注意:substring() 不接受負(fù)的參數(shù);

     ? substr()方法、slice()方法中的參數(shù)如果是負(fù)數(shù),那么它規(guī)定的是從數(shù)組尾部開(kāi)始算起的元素。

var stringValue = "hello world"; alert(stringValue.slice(3,7)); //"lo w" alert(stringValue.substring(3,7)); //"lo w" alert(stringValue.substr(3,7)); //"lo world" var stringValue = "hello world"; alert(stringValue.slice(3,-4)); //"lo w" alert(stringValue.substring(3,-4)); //"hel" alert(stringValue.substr(3,-4)); //" "

1.slice()方法會(huì)把第二個(gè)負(fù)值的參數(shù)轉(zhuǎn)換為“字符串長(zhǎng)度 負(fù)值”(本例中“hello world”共11個(gè)字符(含括號(hào)),所以是11-4=7),也就是說(shuō)slice(3,-4)==> slice(3,7)==>"lo w"

2.substring()方法會(huì)將負(fù)值轉(zhuǎn)換為0,substring(3,-4)==>substring(3,0),又因?yàn)檫@個(gè)方法會(huì)將較小的值作為開(kāi)始位置、較大的值作為結(jié)束位置,所以==>substring(0,3)==>取前3個(gè)字符==>"hel"

3.substr()方法也將第二個(gè)參數(shù)轉(zhuǎn)換為0。而substr()方法的第二個(gè)參數(shù)本身的含義是 ”返回的字符個(gè)數(shù)”,當(dāng)值為0時(shí),即返回0個(gè)字符。所以第二個(gè)參數(shù)為負(fù)值時(shí),該方法返回空字符串。


更多專業(yè)前端知識(shí),請(qǐng)上 【猿2048】www.mk2048.com

總結(jié)

以上是生活随笔為你收集整理的js基本包装类型和引用类型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。