再講之前,先給大家普及一下js中的資料型別總共分為兩種:
1.number 2.string 3.boolean 4.null 5.undefined
1.object 2.function 3.array 4.date 5.regexp介紹完了,接下來就來說說基本型別的包裝:
主要有number,string還有boolean,
但一般number和boolean使用的比較少,歧義較多,因此也不推薦
使用,下面舉個例子介紹string型別的基本包裝:
var str = "abc";
var index = str.indexof(b);
console.log(index);//輸出1
/*不知道這裡大家有沒有疑問,str明明不是string型別嗎,string不是
物件,怎麼能呼叫indexof()方法呢!!!
其實,這裡就涉及到js中的基本包裝型別了:
*/
基本包裝型別的步驟:1.建立乙個臨時變數
2.使用這個臨時變數去呼叫方法
3.使用完立馬銷毀
//當上面的str呼叫indexof()方法的時候,js隱式執行了如下操作:
var temp = new
string();
temp.indexof();
//可以看到str被隱式轉換為了string物件,因此也就可以呼叫方法了.
//boolean,number包裝的方法和string一樣,我就不一一寫了
自定義物件有兩種寫法:
function phone(brand,price,color,tag)
}var phone = new phone("蘋果x",10000,"黑色","裝逼佬");
phone.call();
//這裡使用了new + 建構函式的方式建立了乙個phone的物件並賦給了
//phone,因此phone就能呼叫裡面的call方法了。
// 使用建構函式的方式,適用於批量的建立物件
// 我只想要乙個物件就可以,不需要寫建構函式,太麻煩了
// 因此使用物件字面量的方式
new在建立物件的時候做了四件事:1.建立了乙個空物件,
2.將關鍵字this指向了這個物件
3.執行裡面**,給當前建立的物件賦值
4.返回這個物件
var o = {};//就是使用物件字面量的方式建立了乙個空物件
o.name = "張三"
;o.age = 20
;o.*** = "男"
;o.sayhello =function ()
var o =
}
訪問物件的兩種方式
/*
訪問物件屬性的第一種方式:通過點的方式
物件.屬性
*/console.log(o.name);
console.log(o.age);
console.log(o.***);
console.log(o.sayhello);
/* 第二種:通過鍵的方式
物件[屬性對應的名稱字串]
*/console.log(o["name"]);
console.log(o["***"]);
console.log(o["age"]);
console.log(o["sayhello"]);
刪除物件的屬性:
//delete 關鍵字 -- 刪除的意思
//在js中delete關鍵字是用來刪除物件的某個屬性的
//例如:
var obj = {};
obj.name = 「李狗蛋」;
delete obj.name;
物件型別陣列 自定義排序
我們可以對任何物件型別的陣列排序,比如,物件person有名字和年齡屬性,我們希望根據年齡排序,那麼我們可以這麼寫 const friends function compareperson property if a property b property return 0 console.log ...
自定義型別
typedef型別 typedef 已有型別 新建型別 示例 typedef double area,volume typedef int number number i1 area a enum enum 列舉型別名 enum week 預設sun 0,可以比較 如果修改必須形如enum week...
自定義型別
下面列舉幾種c語言中常用的自定義資料型別 1.結構體型別 當描述乙個整型變數時,可以用int,描述字元型變數時,可以用char,但要描述乙個學生時,因為這個學生包含的資訊很多,比如姓名,性別,年齡等,不能通過單一的型別來描述,所以,這裡引入結構體型別,將某個事物的共有屬性集合在一起,宣告乙個結構體型...