JavaScript基础——自定义对象

简介: JavaScript基础——自定义对象

数据类型

基本数据类型(栈内存):number、string 、null、Boolean、Underfind


引用类型(堆内存): object


创建对象的语法:创建一个obj的对象

1.var obj=new object();     //构造函数


2.var obj={};  //使用对象字面量


3.var fun3=function([形参1、形参n]){


                //函数体


};


参数

调用函数时,解析器不会检查实参的类型;调用函数时,解析器也不会检查实参的数量。


多余的实参不参与运算


如果实参的数量少于形参的数量,则没有对应实参的形参将是underfind


js中作用域分 两种

1、全局作用域

        写在script标签中,页面打开时创建,页面关闭时销毁


        全局作用域有一个window对象,


        创建的变量都是Window对象的属性

        创建的函数都是window对象的方法


2、函数作用域

        调用函数时创建函数作用域,函数执行完毕以后,作用域销毁


        在函数中,不使用var声明的变量都会成为全局变量


声明提前

1、变量的声明提前

       使用关键字var声明的变量,会在所有的代码执行之前被声明,不会赋值


       执行到该行才会赋值。


2、 函数的声明提前

     使用函数声明形式创建的函数 function 函数名 (){}


     它会在所有的代码执行之前就被创建,所以我们可以在函数声明前来调用函数


this指针

解析器在调用函数每次都会向函数内部传递进一个隐含的参数这个隐含的参数就是this,根据函数的调用方式的不同,this会指向不同的对象


1.以函数的形式调用时,this永远都是 window


2.以方法的形式调用时,this就是调用方法的那个对象


原型对象prototype

我们所创建的每一个函数,解析器都会向函数中添加一个属性prototype。这个属性对应着一个对象,这个对象就是我们所谓的原型对象


原型对象就是一个公共性的区域,所有同一类的对象都可以访问这个原型对象


我们可以将对象中的公共性的内容,统一设置在原型对象中


创建构造函数时,可以将对象公有的属性和方法,统一添加到构造函数 的原型对象中


function MyClass(name,age,gender){
  this.name=name;
  this.age=age;
  this.gender=gender;
  //原型函数sayHello写在外边
}
//向MyClass的原型中添加属性a,函数sayHello
    MyClass.prototype.a="123";
    MyClass.prototype.sayHello = function(){
     alert("hello大家好我是"+this.name);
    };
var mc=new MyClass("猪八家",18,"男");
mc.sayHello();
使用in检查对象中是否含有某个属性,原型如果有这个属性也返回true
       console.log("age" in mc);
使用hasOwnProperty()来检查对象自身含有该属性。只有当对象自身含有属性是才返回true
       console.log(mc.hasOwnProperty("age"));

相关文章
|
1天前
|
JSON 前端开发 JavaScript
前端 JS 经典:JSON 对象
前端 JS 经典:JSON 对象
8 0
|
2天前
|
前端开发 JavaScript
前端 js 经典:原型对象和原型链
前端 js 经典:原型对象和原型链
11 1
|
2天前
|
JavaScript 前端开发 流计算
使用JavaScript 中的Math对象和勾股定理公式,计算鼠标的位置与页面图片中心点的距离,根据距离对页面上的图片进行放大或缩小处理
使用JavaScript 中的Math对象和勾股定理公式,计算鼠标的位置与页面图片中心点的距离,根据距离对页面上的图片进行放大或缩小处理
|
2天前
|
JSON JavaScript 前端开发
js将json字符串还原为json对象
【5月更文挑战第14天】js将json字符串还原为json对象
13 1
|
3天前
|
设计模式 存储 消息中间件
JavaScript观察者模式:实现对象间的事件通信!
JavaScript观察者模式:实现对象间的事件通信!
|
3天前
|
设计模式 JavaScript 前端开发
JavaScript原型模式:实现对象共享属性和方法!
JavaScript原型模式:实现对象共享属性和方法!
|
3天前
|
JavaScript 前端开发 开发者
深入理解JavaScript对象创建
深入理解JavaScript对象创建
|
4天前
|
JavaScript 前端开发
js用Date对象处理时间
以上就是JavaScript中Date对象处理时间的一些基本方法。
13 6
|
4天前
|
JavaScript 前端开发
在JavaScript中,函数原型(Function Prototype)是一个特殊的对象
【5月更文挑战第11天】JavaScript中的函数原型是一个特殊对象,它为所有函数实例提供共享的方法和属性。每个函数在创建时都有一个`prototype`属性,指向原型对象。利用原型,我们可以向所有实例添加方法和属性,实现继承。例如,我们定义一个`Person`函数,向其原型添加`greet`方法,然后创建实例`john`和`jane`,它们都能调用这个方法。尽管可以直接在原型上添加方法,但推荐在构造函数内部定义以封装数据和逻辑。
18 2
|
4天前
|
JavaScript 前端开发
JavaScript 提供了多种方法来操作 DOM(文档对象模型)
【5月更文挑战第11天】JavaScript 用于DOM操作的方法包括获取元素(getElementById, getElementsByClassName等)、修改内容(innerHTML, innerText, textContent)、改变属性、添加/删除元素(appendChild, removeChild)和调整样式。此外,addEventListener用于监听事件。注意要考虑兼容性和性能当使用这些技术。
10 2