arguments[索引]
實參的值
1、物件
1)建立物件
①呼叫系統的建構函式建立物件
var obj=new object();
//新增屬性。物件.名字=值;
obj.name="cc";
obj.age=18;
//新增方法
obj.eat=function();
//呼叫
obj.eat();
②自定義建構函式建立物件(結合第一種和需求通過工廠模式建立物件)
工程模式:
物件名 instanceof 物件名
根據物件是否屬於給定類 返回布林值
function
createobject
()return obj;
}//呼叫
var per1=createobject();
function
createobject
(name,age)
自定義建構函式建立物件做了4件事
1、記憶體中開闢空間,儲存建立的新的物件
2、把this設定為當前的物件
3、設定物件的屬性和方法的值
4、返回this物件
示意圖:
③字面量的方式建立物件
var obj={};//建立了空物件
var obj2={};
obj2.name="xx";
obj.say=function();//屬性和方法都是在類外新增的
var obj3=
}缺陷是:一次性的物件
js是一門解釋性,指令碼,弱型別,基於物件,動態型別的語言。
訪問屬性的另一種方法:
function person(name,age);
}//自定義類
var obj=new person("cc",20);
obj["name"]=xx;
//通過中括號取代點
成對出現,是鍵值對。無論是鍵還是值都用雙引號括起來
var json=;
//遍歷
可以通過for-in迴圈
for(var key in json)//key處變數不一定要取名為key,自定義即可
3、簡單型別和複雜型別
1)原始資料型別:number,string,boolean等
2)基本型別,簡單型別,值型別。在棧中儲存:number,string,boolean
3)複雜型別(引用型別):object
4)空型別:null,undefined
引用型別的值在棧和堆中儲存。物件在堆上儲存,位址在棧上儲存
4、值型別與引用型別的傳遞
var obj=;
function
f2(obj2)
f2(obj);
console.log(obj.name);//xx,因為obj與obj2所指向的位址都是相同的
值型別之間傳遞的是值,引用型別作為函式的引數,傳遞的是位址
因為第二條指令傳的是num1的值,var了兩個東西,位址不一樣。
5、內建物件
js系統自帶的物件
math,date,string,array
6、math物件
不是函式的物件
是靜態物件,不需要建立,自己就是乙個物件,方法(靜態方法)直接通過這個物件的名字呼叫。不能例項化物件。例項方法必須通過例項物件呼叫。
math.random();//隨機數生成,範圍是0~1
JS自學筆記04
arguments 索引 實參的值 1 物件 1 建立物件 呼叫系統的建構函式建立物件 var obj new object 新增屬性。物件.名字 值 obj.name cc obj.age 18 新增方法 obj.eat function 呼叫 obj.eat 自定義建構函式建立物件 結合第一種和...
python自學筆記04
python採用半開區間,計數從0開始 eg.str 3 5 獲取的是原字串第4和第5的位置。0,1,2,3,4 取3,4 拓展分片 分片可以有三個引數,第三個引數表示步長,正數表示從前開始,負數表示從後開始。連線和重複str one hello str two world str one str ...
JS自學筆記03
1 函式練習 如果函式所需引數為陣列,在宣告和定義時按照普通變數名書寫引數列表,在編寫函式體內容時體現其為乙個陣列即可,再傳參時可以直接將具體的陣列傳進去 即var max getarratmax 1,4,2,6,8,2,5 關於說明 函式的說明 param array引數為一陣列 解釋說明引數列表...