js中 new運算子解密

2022-08-24 03:15:11 字數 878 閱讀 1387

new 為一元運算子

作用:後面只能跟函式,用來呼叫函式

使用new呼叫函式與直接呼叫函式的區別:

function

fn1()

//this指向的變化

var ret1 = fn1();//

window

var ret2 = new fn1();//

fn1{}

//返回值的變化沒有return

console.log("ret1:"+ret1);//

ret1:undefined

console.log("ret2:"+ret2);//

ret2:[object object]

//返回值的變化有return 返回物件

function

fn2()

var ret3 =fn2();

var ret4 = new

fn2();

console.log("ret3:"+ret3);//

et3:summer,autumn

console.log("ret4:"+ret4);//

ret4:summer,autumn

//返回值的變化有return 返回非物件

function

fn3()

var ret5 =fn3();

var ret6 = new

fn3();

console.log("ret5:"+ret5);//

ret5:我是字串

console.log("ret6:"+ret6);//

ret6:[object object]

使用new呼叫函式可以改變 this 的指向,返回值始終是乙個物件。

js中的new運算子

function base var base new base alert typeof base object var base base alert typeof base string 由以上可知,如果函式返回值是number,string,boolen這樣的值型別,則通過new運算子可以返回...

定位new運算子

通常,new 從堆中分配記憶體,但它還有另一種稱為 定位 placement new 運算子,它可以讓我們指定要使用的位置。可以通過這個特性來設定記憶體管 理規程,處理需要通過特定位址進行訪問的硬體或在特定位置建立物件。要使用定位 new 特性,需要包含標頭檔案 new。使用定位 new 運算子時,...

定位 new 運算子

定位 new 運算子 和普通的new 運算子在堆上隨機分配記憶體相比,定位 new 運算子可以在特定的位址位置 定位 new 運算子的具體使用例項 const int buf 512 const int n 5 char buffer buf void part9 newplace 定位new 的其...