es規定的global
瀏覽器裡預設的是window,在控制台裡輸入window即可看到所有屬性
每次開啟瀏覽器它都會自動生成global,global指向的位址指向window,裡面存放各種屬性(函式,函式也是物件).
es規定的
瀏覽器私有(winodw可省略)
簡單型別m = number('1')
直接在stack裡儲存了數字1,是沒有方法可以使用的,但是卻可以直接使用方法,原因在於使用方法時,js內部會建立乙個臨時變數,比如:
m.tosting()
temp = new number('1')
temp.tosting()
複製**
於是下面這種方法用的人就少了.
物件n = new number('1')
將n的位址存入stack,該位址指向乙個heap記憶體區域,以鍵值對的方式儲存了數字1.對應有很多方法可以使用.
其他型別也是如此.
var a = new number()
var b = new string()
var c = new boolean()
var d = new object()
複製**
以上這些物件都有tostring() valueof()
等方法,把這些方法放在一起.每個物件都有乙個__proto__(指向共有的屬性的集合),通過__proto__訪問該集合來使用其中的函式.原型鏈就是從物件通過__proto__一級一級指向object.prototype的形象叫法.
var 物件 = new 函式()
物件.__proto__ === 函式.prototype //true
函式.prototype.__proto__ === obeject.prototype //true
函式.__proto__ === function.prototype //true
function.prototype === object.prototype //true
var a = new number()
a.__proto__ === number.prototype //true
var b = new string()
b.__proto__.__proto__ === object.prototype //true
function.__proto__ === function.prototype //true
//左側物件是由函式構成的,所以它的__proto__ === 建構函式.prototype
複製**
JS函式裡的this物件
標準函式,this引用的是把函式當成方法呼叫的物件 var age 18 將變數新增到window裡 let obj function getage getage 18 this指向window obj.getage getage obj.getage 20 this指向obj箭頭函式,this引用...
日常記錄 JS裡的物件
1.js中不同型別資料的儲存有何不同?js引擎將計算機分配給它的那部分記憶體分為 區和資料區,區存放使用者寫的 資料區儲存資料。2.幾個經典理解儲存過程的題目 1.var a 1 var b a var b 2 現在a為?a 1 2.var a var b a b 現在a.name為?a.name ...
js修改陣列物件裡的物件屬性名
有時候前端請求介面返回的資料,並不是我們想要的資料格式,一般我們會使用map等方法遍歷修改屬性名,但如果資料量很大或者陣列物件的巢狀複雜,這種方法容易降低效率,下面我們使用乙個簡單的方法進行修改 data json parse json stringify data replace title g ...