JavaScript复合类型
程序员文章站
2022-03-25 10:35:04
...
复合类型分为三种:
Object: 对象。
Array: 数组。
Function: 函数。
1、对象
Object类型,我们也称为一个对象。是JavaScript中的引用数据类型。
JavaScript有如下常用的内置类:
1、 Array: 数组类
2、Date: 日期类。
3、 Error: 错误类。
4、 Function: 函数类。
5、 Math: 数学类,该对象包含相当多的执行数学运算的方法。
6、 Number: 数值类。
7、 Object: 对象类。
8、 String: 字符串类。
2、数组
- 创建数组
- var arr = new Array();
- var arr = [];
- 向数组中添加元素
- 语法;
数组对象[索引] = 值;
arr[0] = 123;
arr[1] = “hello”;
- 创建数组时直接添加元素
- 语法:
var arr = [元素1,元素2…元素N];
- 例子:
var arr = [123,“hello”,true,null];
JavaScript 数组作为栈使用的两个方法如下 。(后进先出,插入元素时在元素尾部插入)
- push(ele): 元素入栈,返回入栈后数组的长度。
- pop(): 元素出栈,返回出栈的数组元素。
JavaScript 数组作为队列使用的两个方法如下 。(后进先出,插入元素时在元素头部插入)
- unshift(ele): 元素入队列,返回入队列后数组的长度。
- shift(): 元素出队列,返回出队列的数组元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
var stack = [];
// 栈,元素插入顺序【1】-》【1,2】-》【1,2,3】
stack.push("1");
stack.push("2");
stack.push("3");
// 出栈,后进先出【1,2,3】-》【1,2】-》【1】
console.log(stack.pop());
console.log(stack.pop());
var queue = [];
// 队列,元素插入顺序【4】-》【5,4】-》【6,5,4】
queue.unshift("4");
queue.unshift("5");
queue.unshift("6");
// 出列,后进先出【6,5,4】-》【5,4】-》【4】
console.log(queue.shift());
console.log(queue.shift());
</script>
</body>
</html>
Array 对象还定义了如下方法:
- sort([ sortfunction]): 对数组元素排序。
- reverse():反转数组包含的元素。
- join([separator]): 将数组的多个元素拼接在一起,组成字符串后返回。
- concat(value, ...):为数组添加一个或多个元素。原数组不变。
- slice((start, [end])
- 可以从一个数组中截取指定的元素
- 该方法不会影响原数组,而是将截取到的内容封装为一个新的数组并返回
- 参数:
1.截取开始位置的索引(包括开始位置)
2.截取结束位置的索引(不包括结束位置)
- 第二个参数可以省略不写,如果不写则一直截取到最后
- 参数可以传递一个负值,如果是负值,则从后往前数 - splice(start, deleteCount, value, …)
- 可以用来删除数组中指定元素,并使用新的元素替换
该方法会将删除的元素封装到新数组中返回
- 参数:
1.删除开始位置的索引
2.删除的个数
3.三个以后,都是替换的元素,这些元素将会插入到开始位置索引的前边
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
var a = ["html",2,"yeeku"];
console.log(a.concat(4,5));
console.log(a.concat([4,5]));
console.log(a.concat([4,5],[6,7]));
var b = ["html",20,"is",99,"good"];
console.log(b.join());
console.log(b.join("+"));
var c = ["html","css","jquery","bootstrap"];
c.reverse();
console.log(c);
var d = ["yeeku","leeganf","www","eeee","wqqee"];
console.log(d.slice(3));
console.log(d.slice(2,4));
console.log(d.slice(1,-2));
console.log(d.slice(-3,-2));
var e = ["yeeku","leegang","carzyit","ffff","www"];
console.log(e.splice(3));
console.log(e.splice(1,1));
console.log(e.splice(0,1,20,30,40));
console.log(e);
</script>
</body>
</html>
3、函数
函数声明语句以关键字 function 开始,其后跟有函数名、参数列表和函数体。其语法如下所示:
function 函数名(参数,参数,参数...){ 函数体 }
• 例如:
function sum(a,b){ return a+b; }
– 上边我们定义了一个函数名为sum,两个参数a和b。函数声明时设置的参数称为形参(形式参数),这个函数对两个参数做了加法运算并将结果返回。