javascript 表达式和运算符 对象和数组的初始化表达式 十八
来源:互联网 发布:淘宝货到付款订单快递 编辑:程序博客网 时间:2024/05/29 10:02
对象的初始化:
Object类型是包含属性(也可以叫字段)和方法(也可以叫函数)。因此在创建Object类型的时候一定是要说明的要点。
一般创建Object类型数的方法有两种:
(1)使用new运算符
var
box=
new
Object();
box.name=
"张三"
;
//创建属性以及初始化
box.age=23;
box.run=running();
//创建方法
function
running(){
return
"我是中国人!"
;
}
document.write(
typeof
box+
"<br/>"
);
document.write(box.name+
"<br/>"
);
document.write(box.age+
"<br/>"
);
document.write(box.run);
(2)字面量表示法
var
box={
name:
"张三"
,
age:23,
run:
function
(){
return
"我是中国人!"
;
}
};
document.write(
typeof
box+
"<br/>"
);
document.write(box.name+
"<br/>"
);
document.write(box.age+
"<br/>"
);
document.write(box.run());
(3)综合使用
我们在传递多个参数的情况下,需要我们按顺序依次输入,为了解决这个繁琐的过程,我们可以将多个参数封装
到一个Object类型中,使用Object类型作为参数,对于不存在或多出的参数我们也可以进行判断,这样方便了调用函
数及传递参数。
function
box(obj){
if
(obj.name!=undefined)document.write(obj.name+
"<br/>"
);
if
(obj.age!=undefined)document.write(obj.age+
"<br/>"
);
if
(obj.love!=undefined)document.write(obj.love+
"<br/>"
);
}
var
obj={
name:
"张三"
,
age:23
};
box(obj);
二、Array类型
ECMAScript中的数组和其他的语言有着很大的差别,JS中的数组中的元素可以是任何数据类型,数组的大小也
是可以调整的。从侧面反映出了JS是一种弱类型语言。创建Array类型数的方法有两种:
(1)使用new运算符(new可以省略)
var
box=
new
Array(1,2,3,4);
document.write(typrof box+
"<br/>"
);
//Array属于Object类型
document.write(box);
//输出1,2,3,4
(2)使用字面量创建数组
var
box=[1,2,3,4];
document.write(typrof box+
"<br/>"
);
//输出Object
document.write(box.length+
"<br/>"
);
//输出数组的长度为4
document.write(box);
//输出1,2,3,4
三、对象中的方法
(1)转换方法
对象或数组都具有toLocaleString(),toString()和valueOf()方法。其中toString()和valueOf()无论重写了谁,都会返
回相同的值。数组会将每个值进行字符串形式的拼接,以逗号隔开。
var
box=[1,2,3,4];
document.write(box+
"<br/>"
);
//输出1,2,3,4
document.write(box.toString()+
"<br/>"
);
//输出1,2,3,4
document.write(box.valueOf()+
"<br/>"
);
//输出1,2,3,4
document.write(box.toLocaleString());
//输出1,2,3,4
(2)栈方法
ECMAScript数组提供了一种让数组的行为类似于其他数据结构的方法。也就是说,可以让数组像栈一样,可以限
制插入和删除想的数据结构。栈是一种后进先出的数据结构,也就是最新添加的元素最早被移除。而栈元素的插入和
移除,只发生在栈的顶部。ECMAScript为数组专门提供了push()和pop()方法。
push()方法可以接受任意数量的参数,把它们逐个添加到数组的末尾,并返回修改数组的长度。而pop()方法则从
数组末尾移除最后一个元素,减小数组的length值,然后返回移除的元素。
(3)队列方法
栈方法是后进先出,队列方法是先进先出。队列在数组的末端添加元素,从数组的前端移除元素。通过push()向
数组末端添加一个元素,然后通过shift()方法从数组的前端移除一个元素。
(4)重排序方法
数组中已经存在两个直接用来排序的方法:reverse()和sort()。
reverse():逆向排序
(5)操作方法
JS为操作已经包含在数组中的元素提供了许多的方法。concat()方法可以基于当前数组创建一个新数组。slice()方
法可以基于当前数组获取指定区域元素并创建一个新数组。splice()方法主要用途是向数组的中部插入元素。
<!DOCTYPE html><lang ="en"><head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript"> var box = new Object(); box.name = "张森纳"; box.age = 23; box.run = running(); function running() { return "我是中国人"; } document.write(box.name +"<br/>" + box.age +"<br/>"); var person = {name :"陈cc" , age :23, running:function(){ return "我是中国人"; } } document.write(person.name +"<br/>" + person.age +"<br/>"); document.write(person.running()); function box2(obj) { if (obj.name !=undefined) document.write(obj.name + "<br/>"); if (obj.age != undefined) document.write(obj.age + "</br>"); if (obj.love != undefined) document.write(obj.love + "</br>" ); } var obj = { name : "历史", age : 23 }; box2(obj); document.write("</br>"); var array1 = new Array(1,2,2,3); document.write( typeof array1 + "<br/>"); document.write(array1); document.write("</br>"); var box1=new Array(10);//创建数组默认必须是数字,必须是一位数字 box1[3]=4;//初始化数组中的元素 box1[5]=6; document.write(box1);//输出,,,4,,6,,,, //创建一个复杂的数组、可以是哥汇总个样的类型 var boxtype=[ { name:"张三", age:23 },//Object类型 [1,2,3,4],//Array类型 "JS",//String类型 25+25,//Number类型 new Array(1,2,3)//Array类型 ]; document.write(typeof boxtype+"<br/>"); document.write(boxtype[0].name+"<br/>"); document.write(boxtype[3]); var box=[1,2,3,4]; document.write(box+"<br/>");//输出1,2,3,4 document.write(box.toString()+"<br/>");//输出1,2,3,4 document.write(box.valueOf()+"<br/>");//输出1,2,3,4 document.write(box.toLocaleString());//输出1,2,3,4 var boxjoin = [1,2,3,4]; document.write(box + "<br/>"); document.write(typeof boxjoin + "<br/>"); document.write(box.join("-")+"<br/>"); document.write(typeof box.join("-"));//push()方法可以接受任意数量的参数,把它们逐个添加到数组的末尾,并返回修改数组的长度。而pop()方法则从// 数组末尾移除最后一个元素 var box=[1,2,3,4]; document.write(box+"<br/>"); box.push(5,6);//在数组末尾添加元素 document.write(box+"<br/>"); document.write(box.push(7,8)+"<br/>");//在数组末尾添加元素,并返回添加元素后数组的长度 document.write(box+"<br/>"); box.pop();//移除数组末尾的元素 document.write(box+"<br/>"); document.write(box.pop()+"<br/>");//移除数组末尾的元素,并返回移除的元素 document.write(box);// 从数组的前端移除元素。通过push()向 // 数组末端添加一个元素,然后通过shift()方法从数组的前端移除一个元素。 var box=[1,2,3,4]; document.write(box+"<br/>"); box.push(5,6);//在数组末尾添加元素 document.write(box+"<br/>"); document.write(box.push(7,8)+"<br/>");//在数组末尾添加元素,并返回添加元素后数组的长度 document.write(box+"<br/>"); box.shift();//移除数组前端的一个元素 document.write(box+"<br/>"); document.write(box.shift()+"<br/>");//移除数组前端的一个元素,并返回移除的元素 document.write(box); document.write(box+"======================="+"<br/>"); // ECMAScript还为数组提供了一个unshift()方法,它和shift()方法的功能完全相反。unshift()方法为数组的前端添加 // 一个元素。 var box=[1,2,3,4]; document.write(box+"<br/>"); box.unshift(5);//在数组的前端添加一个元素 document.write(box+"<br/>"); document.write(box.unshift(-1)+"<br/>");//在数组的前端添加一个元素,并返回添加元素会数组的长度 document.write(box+"<br/>"); box.pop();//在数组末尾移除元素 document.write(box+"<br/>"); document.write(box.pop()+"<br/>");//在数组末尾移除元素,并返回移除元素后数组的长度 document.write(box); document.write("======================="+"<br/>"); document.write("======================="+"<br/>"); var box = [3,2,3,5,6,7]; box.sort(); document.write(box+"<br/>"); document.write(box.sort()+"<br/>"); document.write(box.reverse()+"<br/>");//再次进行逆序,输出12345 // concat()方法可以基于当前数组创建一个新数组。slice()方法可以基于当前数组获取指定区域元素并创建一个新数组。splice()方法主要用途是向数组的中部插入元素。 var box=[1,2,3,4,5]; var box1=box.concat(6);//创建新数组,并添加新元素 document.write(box1+"<br/>");//输出1,2,3,4,5,6, document.write(box);//原数组不变化 document.write("======================="+"<br/>"); document.write("======================="+"<br/>"); /** * Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements. * @param start The zero-based location in the array from which to start removing elements. * @param deleteCount The number of elements to remove. * @param items Elements to insert into the array in place of the deleted elements. */ //splice(start: number, deleteCount: number, ...items: T[]): T[]; var box=[1,2,3,4,5]; var box1=box.slice(2,3);//取出索引为2到3之间的元素组成新的数组 document.write(box1+"<br/>");//输出3 document.write(box);//原数组不变化 var box=[1,2,3,4,5]; var box1=box.splice(0,2);//截取索引为0开始的两个元素组成新的数组 document.write(box1+"<br/>");//返回截取的元素1,2 document.write(box);//当前数组被截取的元素被删除,输出3,4,5 var box=[1,2,3,4,5]; var box1=box.splice(4,0,[6,7,8]);//索引为4的位置插入了一个元素 document.write(box1+"<br/>");//返回新的数组为空,并没有截取元素 document.write(box);//当前数组索引为4的位置插入一个元素1,2,3,4,6,5 var box=[1,2,3,4,5]; var box1=box.splice(4,1,6);//索引为4的元素被替换,替换下来的元素组成新数组 document.write(box1+"<br/>");//返回新的数组5 document.write(box);//被替换后的原数组1,2,3,4,6 </script></head><body></body></html>
- javascript 表达式和运算符 对象和数组的初始化表达式 十八
- JavaScript权威指南_16_第4章_表达式和运算符_4.2-对象和数组的初始化表达式
- JavaScript学习(4.1):原始表达式、对象和数组初始化表达式
- JavaScript 运算符和表达式
- JavaScript 表达式和运算符
- 【JavaScript】表达式和运算符
- javascript表达式和运算符
- JavaScript 运算符和表达式
- JavaScript表达式和运算符
- 数组对象的初始化表达式
- JavaScript表达式和对象
- javascript 变量表达式和运算符
- javascript基础之表达式和运算符
- javaScript-运算符、表达式和控制语句
- JavaScript之表达式和运算符
- JavaScript深入浅出(二)表达式和运算符
- JavaScript之表达式和运算符
- javascript重点-表达式和运算符
- 面向对象_继承的注意项和什么时候使用继承
- 迷茫就是才华配不上梦想
- 关于PHP中异常和错误的笔记
- 【codevs】1506 传话 Tarjan
- Spring学习笔记(二)后处理器与AOP
- javascript 表达式和运算符 对象和数组的初始化表达式 十八
- TMS320C6678外部存储器DDR3硬件设计以及软件调试
- tcp4次挥手
- 共享资源的简单示例
- 百度地图API使用
- 菜鸟商城Android完整源码分享
- Struts2 入门(二) 之 配置文件中的 Action 元素
- MFC属性对话框
- linux中ctrl+z和ctrl+c的区别