JavaScript--Object

2022-08-02  本文已影响0人  蒜泥捣莓

一、Object的概述

ECMAScript 中的对象其实就是一组数据和功能的集合。对象通过 new 操作符后跟对象类型的名称来创建。开发者可以通过创建 Object 类型的实例来创建自己的对象,然后再给对象添加属性和方法。

二、Object的声明

1、使用 new 操作符
let person = new Object();
2、使用对象字面量
let person = { 
    name: 'Jane' ,
};

在对象字面量表示法中,属性名可以是字符串或数值,比如:

let person = { 
 "name": "Nicholas", 
 "age": 29, 
   5: true 
};

注意:数值属性会自动转换为字符串。

访问对象属性使用的是点表示法,也可以用方括号表示法来访问。

console.log(person["name"]); // "Nicholas" 
console.log(person.name); // "Nicholas"

注意:在使用中括号时,要在括号内使用属性名的字符串形式。
如果属性名中包含可能会导致语法错误的字符,或者包含关键字/保留字时,也可以使用中括号语法。

person["first name"] = "Nicholas";

通常,点语法是首选的属性存取方式,除非访问属性时必须使用变量。

3、给对象添加方法

可以像添加属性一样给对象添加方法:

let o = {}; 
o.test = function(){ 
    console.log(1); 
}
o.test(); //1

三、增删改查的操作

//通过key(属性名)来访问对应的值(属性值)
var obj = { 
            name: 'kunkun',
            age: 24,
            sex: 'man',
            hobby: ['sing', 'dancing', 'rap', 'basketball'] ,
            boyfriend:{
                name:'liuwei',
                sex:'man',
                age:22,
            },

        };
console.log(obj.name);//kunkun
console.log(obj['age']);//24
console.log(obj.hobby[2]);//rap
增和改
//添加和修改 其实就是设置对应的值
// 如果当前这个key在对应的对象里面可以找到他就修改 如果找不到就是添加
obj.songs='You Beautiful';
obj.songs='You Only Beautiful';
console.log(obj.songs);//'You Only Beautiful'
//删除操作 删除里面的属性 delete
delete obj.boyfriend.sex;//man
console.log(obj);

四、this关键字

表示this它是一个对象,特殊的对象会随引用的变化而变化。全局的this 指向window的 ,对象里面函数的this 指向当前对象

let person = {
     name:'kangkang',
     age:21,
     hobby:'rap',
     salary:'15k',
      printInformation:function(){
          console.log(this);
       }
   }
person.printInformation();

五、window的两个方法

1、延时器

setTimeout

setTimeout() 方法用来实现一个函数在指定的毫秒数之后运行,返回一个值,这个值可以传递给clearTimeout()用于取消 这个函数的执行。

var times = setTimeout(function(){},1000); 
//1000毫秒后执行 
clearTimeout(times); 
//取消执行
clearTimeout

(延时器id) (清除延时器 销毁对应的延时器)

var id = setTimeout(function(){ //这个id是number类型
 console.log('hello')
},1000)
clearTimeout(id)

2、定时器

setInterval

setInterval()方法和setTimeout()一样,只不过这个函数会在指定毫秒数的间隔里重复调用,也返回一个值,这个值传递给clearInterval(),用于取消后续函数的调用。

clearInterval

清除定时器 传对应的id

/var times = setInterval(function(){},1000); 
//每隔1000毫秒调用一次function 
clearInterval(times);
//取消后续函数执行

注意
1)不要再setInterval里面套setInterval

1)如果setInterval 套了setInterval 里面的执行时间要比外面的要短

上一篇下一篇

猜你喜欢

热点阅读