JavaScript的构造函数

【JS继承】JS继承之构造函数继承 一、构造函数js中定义一个function,当使用new关键字调用这个function的时候,这个function成为一个构造函数。如下所示: 二、new关键字当使用new关键字调用构造函数生成一个对象实例时,js做出的关键处理如下: 1.创建一个新的对象,将构造函数内this指针指向新建对象。 2.将新建对象的__proto__属性设置成构造函数的prototype属性,确保新建对象是构造函数实例。 3.运行一遍构造函数,如果构造函数本身需要返回一个object或者array对象,则舍去新创建对象 阅读详情

    JavaScript是面向对象的语言,为了编程的方便,所以通常是用构造函数来模拟类来模拟类,构造函数就是具有一系列属性和行为作为函数体的函数,可以通过函数参数传入值。下面是构造函数的示例代码

1、普通的构造函数(注意:使用时定义的构造函数名字首字母需大写;实例化函数,然后调用)

function Run(n,num,c){//构造函数,此处的类名必须要大写
    this.name=n;//this不是Run,是指实例化的对象即run_test
    this.age=num;
    this.color=c;
    /*this.say=function(){
	alert(12)
    }*/
}
var run_test=new run("123",4,"blue")//Run函数的实例化方法

//可通过constructor和instanceof 来判断run_test的构造函数的原型是不是Run
//console.log(run_test.constructor==Run);//true;constructor是判断run_test的构造函数是不是Run
//console.log(run_test instanceof Run)
//prototype构造函数的原型,可以将构造函数中公用的部分放在原型里面
Run.prototype.say=function(){
    alert('我是测试程序');
}
run_test.say();	通过实例出来的构造函数去继承	

2、prototype原型链

    原型链:对象(类)的属性 prototype 即是对原型对象的引用,创建实例后,也有属性 __proto__ 指向原型对象,但该属性是隐含的。由于不断创造新对象(实例),一级一级的传递原型对象,即可构成原型链。通过原型链,即可实现继承。

    因为在实际开发的项目中,每类对象的实例对象都有可能会有一些相同的属性,或者相同的功能,如果都写在原型构造函数上,会造成重复的内容,占用更多的内存。

为了解决这种代码的重复:

1) 构造函数都有一个prototype属性,指向另一个对象。这个对象的所有属性和方法,都会被构造函数的实例继承。
2)我们可以把那些不变的属性和方法,直接定义在prototype对象上。

操作步骤:

1)将原型对象实例化;

2)将此实例化的对象赋给一个变量;

3)该变量可继承原型对象prototype方法里面所有定义的属性

4)应用到相应的开发项目中

代码实例如下:(计算工资的一个小例子)

function Student(n,m){
    this.name=n;
    this.gongzi=m;
}
Student.prototype.study=function(num){
    var money=parseInt(Math.random()*num*10);
    this.gongzi +=money;
}
Student.prototype.sleep=function(num){
    var money=parseInt(Math.random()*num*2);
    this.gongzi +=money;
}
var zhangsan=new Student("zhangsan",3000);
var wanger=new Student("wanger",1000);
for(var i=0;i<6;i++){//月
    for(var j=0;j<4;j++){//周
        for(var k=0;k<5;k++){//天
            zhangsan.study(5);
            zhangsan.sleep(19);
            wanger.study(17);
            wanger.sleep(7)
        }
    }
}
console.log(zhangsan.gongzi);
console.log(wanger.gongzi)

postman响应体:“msg“: “请求缺失签名Sign“、 “msg“: “请求缺失时间戳“ 请求标头有Sign、Timestamp,但是直接将网址复制到postman时,Headers没有自动生成这两个参数,所以运行时会报错。 阅读详情

相关推荐

保姆级教程:用Fiddler+夜神模拟器搞定抖音App抓包(附SSL Pinning绕过实战)

本文提供了一套完整的移动端抓包解决方案,详细介绍了如何使用Fiddler和夜神模拟器进行抖音App抓包,并重点讲解了SSL Pinning绕过技术。通过Xposed框架和JustTrustMe模块的组合,实现高效抓包,适用于产品分析、竞品研究和安全测试等场景。

weixin_30855099的博客 423

JavaScript构造函数学习:js中构造函数与普通函数的区别

构造函数不仅只出现在JavaScript中,它同样存在于很多主流的程序语言里,比如c++、Java、PHP等等。与这些主流程序语言一样,构造函数在js中的作业一样,也是用来创建对象时初始化对象,并且总与new运算符一起使用。 在js中,构造函数与普通函数的区别不是很大。接下来就主要讲讲两者的区别。 1.在命名规则上,构造函数一般是首字母大写,普通函数则是遵照小驼峰式命名法。 2.在函数调用时...

趙小二啊 1937

lammps建模(电解液)opls-aa力场的基本流程

lammps建模(电解液)opls-aa力场的基本流程

syj0922的博客 2134

js封装函数_你了解JavaScript中构造函数的构造函数吗?

作者:爱一个人没有错出处:https://segmentfault.com/a/1190000037559919背景分析当我们需要,多个结构相同(例如属性名相同,属性值不同)的对象时如何定义)?例如:var p1={x:10,y:20}var p2={x:30,y:40}var p3={x:50,y:60}在如上代码中,假如属性比较多,构建对象时需要反复对属性进行编写,代码的重复量就比较大,同样会...

weixin_39663258的博客 167

k8s中如何使用gpu、gpu资源讲解、nvidia gpu驱动安装

gpu资源也是服务器中常见的一种资源,gpu即显卡,一般用在人工智能、图文识别、大模型等领域,其中nvidia gpu是nvidia公司生产的nvidia类型的显卡,amd gpu则是adm公司生产的amd类型gpu。企业中服务器最常见的就是英伟达gpu服务器了。本篇也主要讲解英伟达驱动相关的知识。

MssGuo的博客 1万+

UDF学习(四)FLUENT UDF-DEFINE_PROFILE宏

利用DEFINE_PROFLILE可以指定以下边界或计算域信息:DEFINE_PROFILE(name,t,i)//既可以用。

weixin_44386973的博客 1806

JavaScript中构造函数的构造函数

1:需求分析: 当我们需要,多个结构相同(例如属性名相同,属性值不同)的对象时如何定义)?例如: var p1={x:10,y:20} var p2={x:30,y:40} var p3={x:50,y:60} 在如上代码中,假如属性比较多,构建对象时需要反复对属性进行编写,代码的重复量就比较大,同样会加大我们的工作量,那如何对其进行优化呢? 2:JS中构造函数定义 JS中的构造函数允许我们对JS对象进行抽象,提取对象结构进行封装, 然后构建对象时基于构造函数定义的结构进行实例化.: 2.1:

KAITUOZHEMJ的博客 295

如何使用Google Maps API爬取地理数据:详细教程与Python实现

Google Maps API 是一组服务的集合,允许开发者访问地图、地点、路线等地理信息。:将地址转换为地理坐标,或将地理坐标转换为地址。:计算两点之间的行车路线、步行路线等。Places API:获取附近的地点、商店、餐馆等。:计算多个地点之间的距离和时间。在接下来的代码中,我们将结合这些 API,展示如何获取并处理地理数据。本文详细介绍了如何使用 Google Maps API 获取地理数据,涵盖了从地址转经纬度、获取地点详情、计算路线、计算多个地点的距离与时间等多个功能。

2201_76125261的博客 733

js构造函数与JAVA构造函数

构造函数对我们再熟悉不过了。但是,要是提到JS的构造函数,未必有很多人经常用到。下面是我自己对JS构造函数与JAVA构造函数区别的一点看法:先看两段JS构造函数的代码: script language="javascript">    function Person(i)...{        this.address = i;    }    Person.prototype.n

woai_432的专栏 3681

AI视频生成工作流开发:从产品拆解到带货视频全流程实现

本文介绍了一套完整的AI视频生成工作流开发方案,该系统能够自动分析产品素材并生成9个标准化分镜,支持白底图智能替换,最终输出专业带货视频。系统基于Coze平台搭建,整合豆包大模型及多模态生成模型,实现从产品分析、脚本生成到视频合成的全流程自动化。关键模块包括产品特征提取、智能分镜分配、视觉内容生成和用户交互调整,支持手动优化提示词和输出结果。该方案采用模块化设计,结合多种AI模型协同工作,为电商视频制作提供高效解决方案。

huanghm88的专栏 384

PyCharm 怎么不升级直接使用Jupyter Notebook

在PyCharm 中需要升级到 PyCharm Professional 版本,才能直接使用 Jupyter Notebook。从截图来看,Jupyter Notebook 已经成功启动,并且正在运行。这将在默认网络浏览器中打开一个新的标签页,显示文件浏览器界面。可以在这里创建和编辑。文件添加到 PyCharm 项目中,并使用纯文本编辑功能进行修改。支持与外部工具集成,可以配置它以调用命令行工具或脚本来启动。,参数可以根据需要设置,工作目录设置为项目根目录。,你仍然可以在本地环境中安装和运行。

Davina_yu的博客 996

《你不知道的JavaScript》:js构造函数的假面

本篇继续看下对象的内置属性[[Prototype]]。 在js中[[Prototype]]属性最常出现的地方构造函数添加“原型方法”上面了。 function Foo(name){ this.name = name; } Foo.prototype.showName = function(){ return this.name; } var obj = new Foo("nitx"...

一期一会的博客 250

ImportError: DLL load failed while importing _rust: 找不到指定的程序的解决方案

 本文主要介绍了ImportError: DLL load failed while importing _rust: 找不到指定的程序的解决方案,希望能对使用Python的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 19万+

JS——构造函数

JS中的构造函数

k464746的博客 1万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

【JS-6】——JavaScript构造函数与原型

上次笔记大致说了一下javaScript中函数的使用,我们这次来看一下构造函数与原型。 文章目录使用工厂方法创建对象构造函数构造函数的执行流程使用toString()构造函数的修改原型检测原型之前的 使用工厂方法创建对象 我们现在要创建几个对象: var obj ={ name:"孙悟空", age:18, gender:male, sayName:function(){ a...

weixin_46351593的博客 342

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

JS构造函数和原型

1. 构造函数和原型 1.1 概述 在典型的OOP语言中,例如java,都存在类的概念。 类就是对象的模板,对象就是类的实例,但是在ES6之前,JS没有引入类的概念。 ES6 全称ECMAScript 6.0,2015.06发版。在ES6之前,对象不是基于类创建的,而是用一种称为构建函数的特殊函数来定义对象和它们的特征。 创建对象可以通过以下三种方式: 对象字面量 //var obj1 = { } new Object() //var obj2 = new Object() 自定义构造函数 1.2 构

qq_45359288的博客 1140

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

JavaScript:构造函数

JS语言中使用构造函数(constructor)作为对象的模板,所谓构造函数,就是提供一个生成对象的模板,并描述对象的基本结构的函数。JS中使用同一个构造函数创建的对象,我们称为一类对象,也将一个构造函数称为一个类(理解为模板,表示某一类实物的共同特征)。使用对象字面量创建一系列同一类型的对象时,这些对象可能具有一些相似的特征(属性)和行为(方法),此时会产生很多重复的代码,把这些重复性的特征和属性抽象出来,做成构造函数,可以实现代码复用。我们将通过一个构造函数创建的对象,称为是该类的实例。

snow的博客 5971

JavaScript构造函数(new构造js对象与原型链prototype)

那这个例子里面的汽车模子就是构造函数,每一辆汽车就是实例,构造函数生成的实例都有相同的结构,颜色可能有所不同。1、使用对象字面量创建一系列同一类型的对象时,这些对象可能具有一些相似的特征(属性)和行为(方法),降低代码冗余,提高代码复用率。5、js语言中使用构造函数(constructor)作为一个生成对象的模板,可以以此生成多个对象,每个对象都有相同的。4、“对象”是单个实物的抽象,通常需要一个模板,表示某一类实物的共同特征,然后“对象”根据这个模板生成。关键字来调用的函数,都叫做构造函数,一般。

HD243608836的博客 1543

JS中构造函数,实例,原型的关系

JS中构造函数,实例,原型的关系 1、概念 1.1、构造函数 与其它面向对象语言一样,JS中用于创建并初始化对象的函数称为构造函数。但需要注意的是,JS没有语法上的构造函数,它只是一种用法上的定义。 让一个函数成为构造函数的原因在于new运算符。new作用于函数时,会自动创建一个空对象,并将该对象赋给this, 在函数的结尾,自动地返回this。(如果函数内显式返回了一个对象,this将不会被返回;如果函数内的返回值是一个原始值,将会被this代替。)所以一般的函数都可以在前面加new变成构造函数,一个函数

chen_z_p的博客 1227

js构造函数

js构造函数 1. 什么是构造函数 在JavaScript中,用new关键字来调用的函数,称为构造函数,构造函数首字母一般大写 2. 使用构造函数的场景 var p1 = { name:'Tom',age:'18',sex:'男'}; var p2 = { name:'Jerry',age:'18',sex:'男'}; var p3 = { name:'Speike',age:'20',sex:'男'}; var p4 = { name:'Tyke',age:'8',sex:'男'};、 var p..

gu_eu的博客 1万+

js(javascript)中的借用构造函数

//借用构造函数     function Parent(name,age,gender){         this.name=name;         this.age=age;         this.gender=gender;     } //    function Child(name,age,gender,number){ //        th

ITzhongzi的博客 779

JavaScript中什么是构造函数?

今天被刚来的实习生问及一个普遍说不清道不明的问题,什么是构造函数?经过一番思索,决定从JavaScript 的函数本质开始说起。(以下简称js) 要想搞明白构造函数,就要先弄懂什么是函数?以及js中有哪几种函数的创建形式。 什么是函数? 函数简单的说就是重复执行的代码块;按照JavaScript权威指南(第六版)(作者是David Flanagan) (注:这本书还是很适合初学者看的,提供

Turbo的博客 6575

Javascript js构造函数

注解:1、构造函数没有new Object 过程,实则为后台自动创建; 2、This 指向 构造函数本身 3、构造函数无返回对象引用,实则为后台自动返回;但构造方法,需要有返回值时需要返回。 实例: function Base(){ //自动创建为对象 ,不需要返回对象引用 this.elements =[]; this.getId = function(id){ this.elements.p...

c15120067946的博客 281

js构造函数详解

js构造函数详解

m0_52669454的博客 1万+

【JavaScript】构造函数详解

构造函数是 JavaScript 中用于创建对象的特殊函数。当你通过构造函数创建一个对象时,会自动执行初始化操作,使该对象拥有独立的属性和方法。构造函数通常与new关键字一起使用。在上述代码中,Person函数就是一个构造函数。它接收name和age作为参数,并将它们赋值给通过this引用的属性。JavaScript 中的构造函数提供了一种强大而灵活的方式来创建对象。通过理解构造函数的工作原理、原型链、继承机制等,开发者可以更加高效地组织代码,提升应用的可扩展性和维护性。

lph159的博客 2324

JavaScript之构造函数

JavaScript之构造函数1.什么是构造函数2.为什么要使用构造函数3.构造函数的执行过程4.构造函数的返回值 大家都知道原型和原型链是 JavaScript 中最经典的问题之一,而构造函数又是原型和原型链的基础,所以先了解清楚构造函数以及它的执行过程可以更好地帮助我们学习原型和原型链的知识。 本文将从以下几个方面来探讨构造函数: 1.什么是构造函数 2.为什么要使用构造函数 3.构造函数...

TSORA-C的博客 1110
上一篇: jquery和vue.js的区别
下一篇: web前端——浏览器兼容性
晶球
博客等级 码龄9年 4粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值