day16
对象与数组
1.对象: object ,无序值的集合 ,由键值对组成的结构
var stu1 = {
name: "张三", //属性名:属性值
age: 22,
gender: "女",
sleep: function () {
//方法名:方法体
//如何做的代码
document.write("shuijiaole");
},
eat: function () {
//如何做的代码
},
};
2.对象的增删改查
var obj = new Object; //创建对象
console.log(obj); //给对象添加内容
obj.name = "大胆";
obj.age = 20
console.log(obj)
document.write("minzi"+obj.name) //查
obj.age=15
console.log(obj)
var obj ={} //改
obj["name"] = "ghsjad"
console.log(obj);
//删
delete obj["name"]
console.log(obj);
//遍历对象
for(var i in obj){
console.log(obj[i]);
}
3.数组:有序的值的集合 通常是用来描述一组同类型的数据
var arr1 = [1,2,3,4,5,6,7,8,9] //创建数组
4.数组的常用方法
var arr =[1,2,3]
arr.push(5) //往数组中追加 返回值是数组的长度
arr.pop() //删除最后一个元素 返回被删的元素
var resun = arr.unshift("1") //从前面加元素 返回长度
console.log(arr);
var resun = arr.shift("1") //从前面删元素 返回删除元素
//splice 中间删除
arr=[1,2,3,4,5]
var resp = arr.splice(1,0)
console.log(arr);
arr.splice(0,2,7,8) //从第三位开始将以后的参数放到截取的位置添加到数组中 第一是截取的位置,第二个是个数
console.log(arr);
5.冒泡排序:将两两相邻的元素进行比较,大的放小的后面,比较一轮会将最大的放到最后
var arr = [5, 8, 9, 6, 7, 2, 3, 2]
for (var j = 0; j < arr.length - 1; j++) {
for (var i = 0; i < arr.length - 1 - j; i++) {
if (arr[i] > arr[i + 1]) {
var temp = arr[i]
arr[i] = arr[i + 1]
arr[i + 1] = temp
}
}
}
console.log(arr);
6.数组去重
var arr1 = [1, 1, 1, 2, 1, 2];
function norepeat(arr) {
for (var i = 0; i < arr.length - 1; i++) {
for (var j = i + 1; j <= arr.length - 1; j++) {
if (arr[i] == arr[j]) {
arr.splice(j, 1); //[1,1,2,1,2] [1,2,1,2] //切掉重复的 后面的元素会往前顶
j--;
}
}
}
return arr;
}
console.log(norepeat(arr1));