文参与4月更文挑战,打卡day21,第二十一篇
6. 对象(Object 用的多)
类似于C++中的map(Python中的字典),由key:value对构成。
value可以是变量、数组、对象、函数等,值可以为空(null,undefined)
函数定义中的this用来引用该函数的“拥有者”。
》
对象属性与函数的调用方式:
person.name、person.add_money()
// 用中括号的时候里面的键名要加引号,该方式可以随时修改引号中的内容(即随时修改name的值来访问不同的变量)
person["name"]、person["add_money"]()
7. 数组
数组是一种特殊的对象。
类似于C++中的数组,但是数组中的元素类型可以不同。
数组中的元素可以是变量、数组、对象、函数。
let a = [1, 2, "a", "yxc"];
let b = [
1, // 变量
"yxc", // 变量
['a', 'b', 3], // 数组
function () { // 函数
console.log("Hello World");
},
{ name: "yxc", age: 18 } // 对象
];
修改数组中的某一项
其中数组下标可以任意定义,未被定义到的下标就是undefined
数组的长度=最大小标+1
访问数组中的元素的方法:通过下标访问
a[0] = 1; // 访问数组a[]的第0个元素
console.log(a[0]);
数组的常用属性和函数
属性length:返回数组长度。注意length是属性,不是函数,因此调用的时候不要加()
函数push():向数组末尾添加元素
函数pop():删除数组末尾的元素
函数splice(a, b):删除从a开始的b个元素
函数sort():将整个数组从小到大排序
自定义比较函数:array.sort(cmp),函数cmp输入两个需要比较的元素,返回一个实数。负数表示第一个参数小于第二个参数,0表示相等,正数表示第一个参数大于第二个参数。
实现对数组a从大到小排序:
实现对数组a从小到大排序: