《javascript高级程序设计》读书笔记(四)引用类型
2014-11-12 21:52
246 查看
第五章:引用类型
Object类型
创建object实例的两种方式:
1.new方式
var person = new Object();
person.name = “haozk”;
person.age = 24;
2.对象字面量表示法
var person = {
name:”haozk”,
age:24
}
也可以将属性用字符串包围:
var person = {
“name”:”haozk”,
“age”:24
}
访问object实例的属性,也有两种方式:
1.alert(person[“name”]) //方括号方式(可以通过变量来访问属性,属性也可以为关键字或者保留字)
2.alert(person.name) //点方式
Array类型
不同于其他编程语言的array,js中的array具有stringbuffer的动态调整大小,又数据项类型可以不相同。
创建也有两种方式,new与数组字面量方式:
var colors = new Array();
var colors = new Array(3);
var colors = new Array(“red”,”blue”,”green”);
var colors = [];
var colors = [“red”,”blue”,”green”];
数组的length属性不是只读的,可以改变:
colors.length = 2;
alert(colors[2]); //undefined
colors[colors.length] = ‘black’; //在位置2,添加一种颜色,现在的length为3.
检测数组:(重要)
Array.isArray()方法
if(Array.isArray(value)){
//对数组的相关操作
}
转换方法:
调用数组的toLocaleString()、toString()、valueOf(),返回结果都是每项以逗号分隔的字符串。
alert()接受字符串参数,会在后台调用toString()方法,所以可以直接alert(colors).
调用join()方法,可以接受参数,作为分隔的字符串,如:
alert(colors.join[“||”]) //red||blue||green
栈方法:push(),pop()
队列方法:push(),shift(),unshift(能在数组前端添加任意个项并返回新数组的长度)
重排序方法:
反转:reverse()
升序:sort() (注意:是按字符串排序而不是数值)
function compare(value1,value2){ //升序 (通用)
if(value1<value2){
return -1; //若降序,return 1;
}else if(value1>value){
return 1; //若降序,return -1;
}else{
return 0;
}
}
var values = [0,1,5,10,15];
values.sort(compare);
alert(values);
操作方法:contact(),slice(),splice()
位置方法:indexOf(),lastIndexOf()
迭代方法:every(),filter(),forEach(),map(),some()
缩小方法:reduce(),reduceRight()
Object类型
创建object实例的两种方式:
1.new方式
var person = new Object();
person.name = “haozk”;
person.age = 24;
2.对象字面量表示法
var person = {
name:”haozk”,
age:24
}
也可以将属性用字符串包围:
var person = {
“name”:”haozk”,
“age”:24
}
访问object实例的属性,也有两种方式:
1.alert(person[“name”]) //方括号方式(可以通过变量来访问属性,属性也可以为关键字或者保留字)
2.alert(person.name) //点方式
Array类型
不同于其他编程语言的array,js中的array具有stringbuffer的动态调整大小,又数据项类型可以不相同。
创建也有两种方式,new与数组字面量方式:
var colors = new Array();
var colors = new Array(3);
var colors = new Array(“red”,”blue”,”green”);
var colors = [];
var colors = [“red”,”blue”,”green”];
数组的length属性不是只读的,可以改变:
colors.length = 2;
alert(colors[2]); //undefined
colors[colors.length] = ‘black’; //在位置2,添加一种颜色,现在的length为3.
检测数组:(重要)
Array.isArray()方法
if(Array.isArray(value)){
//对数组的相关操作
}
转换方法:
调用数组的toLocaleString()、toString()、valueOf(),返回结果都是每项以逗号分隔的字符串。
alert()接受字符串参数,会在后台调用toString()方法,所以可以直接alert(colors).
调用join()方法,可以接受参数,作为分隔的字符串,如:
alert(colors.join[“||”]) //red||blue||green
栈方法:push(),pop()
队列方法:push(),shift(),unshift(能在数组前端添加任意个项并返回新数组的长度)
重排序方法:
反转:reverse()
升序:sort() (注意:是按字符串排序而不是数值)
function compare(value1,value2){ //升序 (通用)
if(value1<value2){
return -1; //若降序,return 1;
}else if(value1>value){
return 1; //若降序,return -1;
}else{
return 0;
}
}
var values = [0,1,5,10,15];
values.sort(compare);
alert(values);
操作方法:contact(),slice(),splice()
位置方法:indexOf(),lastIndexOf()
迭代方法:every(),filter(),forEach(),map(),some()
缩小方法:reduce(),reduceRight()
相关文章推荐
- javascript高级程序设计第五章:引用类型读书笔记
- 读书笔记 - js高级程序设计 - 第五章 引用类型
- 《JavaScript高级程序设计》读书笔记--5-引用类型
- 读书笔记_CLR.via.c#第五章_基元类型_引用类型_值类型
- 《JavaScript高级程序设计》读书笔记之一:几个与原始类型等价的引用类型的常用方法和属性
- CLR Via C# 第五章(基元类型,引用类型与值类型)(2)——读书笔记
- 《Effective C#》读书笔记——条目18:区分值类型和引用类型<.NET资源管理>
- 《JavaScript高级编程》读书笔记——引用类型二:Date和RegExp
- 《javascript高级程序设计》读书笔记(四)引用类型
- CLR Via C# 第五章(基元类型,引用类型与值类型)(1)——读书笔记
- 《C# in Depth:深入理解C#》读书笔记 - 值类型和引用类型
- 《CLR via C#》读书笔记--基元类型、引用类型和值类型
- 【Head First Java 读书笔记】(三)primitive主数据类型和引用
- 《JavaScript高级编程》读书笔记——引用类型一:Object和Array
- 《javascript高级程序设计》读书笔记——引用类型之function类型(细节整理)
- .net框架读书笔记---值类型与引用类型(一)
- 《javascript高级程序设计》读书笔记——引用类型之Object类型(细节整理)
- 《JavaScript高级程序设计》 - 读书笔记 - 第5章 引用类型
- javascript高级程序设计(第3版) 读书笔记3—— 引用类型
- 《CLR via C#》读书笔记(5)基元类型、引用类型和值类型