位置: 编程技术 - 正文

JavaScript基础知识点归纳(推荐)(javascript零基础)

编辑:rootadmin

推荐整理分享JavaScript基础知识点归纳(推荐)(javascript零基础),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript语言基础,javascript基础入门教程,javascript基础笔记,javascript基础入门视频教程,javascript入门基础,javascript 基础,javascript基础入门教程,javascript基础入门视频教程,内容如对您有帮助,希望把文章链接给更多的朋友!

定义在函数外的变量一定是全局变量;定义在函数内的变量,如果声明了var,那该变量就是局部变量,如果不声明var,那么该变量就是全局变量。

1、全局变量与局部变量 JavaScript

2、两种类型的Cookie

i)持久性cookie,会被存储到客户端的硬盘上。

ii)回话cookie:不会被存储到客户端的硬盘上,而是放在浏览器进程所处的内存当中,当浏览器关闭时则该回话cookie就销毁了。

3、在JavaScript中,函数(function)就是对象

4、在JavaScript中,没有方法(函数)重载的概念

5、Function对象

在JavaScript中有一个Function对象,所有自定义的函数都是Function对象类型的。Function对象接受的所有参数都是字符串类型的,其中最后一个参数就是要执行的函数体,而前面的参数则是函数真正需要接受的参数。

6、隐含的对象arguments

在JavaScript中,每个函数都有一个隐含的对象arguments,表示给函数实际传递的参数。arguments.length就表示实际传递的参数的个数。

7、函数名.length

每一个函数对象都有一个length属性,表示该函数期望接受的参数个数。它与函数的arguments不同。arguments.length表示函数实际接受的参数个数。

8、JavaScript中有五种原始数据类型

Undefined、Null、Boolean、Number以及String。(注意:在JavaScript中,没有char数据类型)

Undefined数据类型的值只有一个:undefined;

Null数据类型的值只有一个:null;

Boolean数据类型的值有两个:true和false;

9、typeof运算符

typeof是一元运算符,后跟变量的名称,用于获取变量的数据类型,其返回值有5个:undefined、boolean、number、string以及object。

、在JavaScript中,如果函数没有声明返回值,那么会返回undefined、null与undefined的关系

undefined实际上是从null派生出来的。例如:

null与undefined的关系

JavaScript

、强制类型转换

在JavaScript中有3种强制类型转换:Boolean(value),Number(value),String(value)。

、Object对象

在JavaScript中,所有对象都是从Object对象继承过来的。

Object对象

JavaScript

上面的代码中,浏览器并没有打印出什么,并不能说明Object对象不带有任何属性。下面代码测试Object对象中的属性是否可以枚举,如果返回false,则说明Object对象中的属性是不能枚举的。

Object对象中的属性是不能枚举的

JavaScript

浏览器弹出false对话框,则说明Object对象中的属性是不能枚举的。

接下来我们再看看window对象中的属性是否可以枚举的

window对象中的属性是可以枚举的

JavaScript

在Chrome浏览器中我们会看到浏览器调试控制台中打印出一大堆属性,说明window对象中的属性是可以枚举的。

、在JavaScript中,可以动态添加对象的属性,也可以动态删除对象的属性

动态添加/删除对象的属性

JavaScript

、JavaScript中定义对象最常见的方式

定义对象最常见的方式

JavaScript

、数组

数组定义

JavaScript

调用数组的sort()方法,浏览器打印1,,4,这并不是我们期望的结果。

对于JavaScript数组的sort方法来说,它会先将待排序的内容转换为字符串(调用toString()方法),按照字符串的先后顺序进行排序。

下列方式可以得到我们期望的结果(按数组大小进行排序):

数组排序

JavaScript

我们再用匿名函数的方式实现:

匿名函数排序

JavaScript

、JavaScript中定义对象的5种方式(JavaScript中没有类的概念,只有对象)i)基于已有对象扩充其属性和方法

JavaScript基础知识点归纳(推荐)(javascript零基础)

基于已有对象扩充其属性和方法

JavaScript

最简单的一种方式,使用起来并不方便,适合于临时需要一个对象。

ii)工厂方式创建对象

不带参数的工厂方法:

JavaScript

带参数的工厂方法:

JavaScript

上面两种不带参数和带参数的工厂方法缺点:

每创建一个对象,内存中就创建一个get方法,比较浪费内存,且影响性能。而我们的期望是,创建两个不同的对象,它们的属性是不一样的,但方法是共用的。所以接下来我们需要改进createObject工厂方法。

改进的工厂方法:

JavaScript

将get方法定义在createObject函数外面,这样每创建一个对象,get方法都是共用的。让一个函数对象被多个对象所共享,而不是每一个对象都拥有一个函数对象。

iii)构造函数方式创建对象

不带参数的构造函数:

JavaScript

带参数的构造函数

JavaScript

iv)原型(prototype)方式创建对象

prototype是Object对象里面的一个属性

prototype

JavaScript

单纯地使用原型方式有两个问题:第一,你无法在构造函数中为属性赋初值,只能在对象生成之后再去改变属性值。

prototype

JavaScript

浏览器将会打印:zhangsan,lisi, 和 zhangsan,lisi,.

如果使用原型方式创建对象,那么生成的所有对象会共享原型中的属性,这样一个对象改变了该属性也会反应到其他对象当中。所以单纯地使用原型方式是不行的,还需要结合其他方式。接下来我们会继续介绍。

使用原型+构造函数方式来定义对象

JavaScript

使用原型+构造函数方式来定义对象,对象之间的属性互不干扰,各个对象间共享同一个方法,这是一种比较好的方式。

v)动态原型方式

JavaScript

在动态原型方式中,在构造函数中通过标志量让所有对象共享一个方法,而每个对象拥有自己的属性。上面代码在第一次创建对象时,首先通过一个判断语句,看flag属性是否已经定义,若没有定义,则通过原型方式添加getInfo方法,然后将flag设置为true,那么当第二次创建对象时,if语句判断为假,跳过执行。这样就达到了我们所期望的结果,创建的对象属性是互不干扰的,而对象的方法是共享的。

、JavaScript中对象的继承(5种方式)

第一种方式:对象冒充

冒充对象继承

JavaScript

第二种方式:call()

继承的第二种实现方式,call方法方式,call方法是Function对象中定义的方法,因此我们定义的每个函数都拥有该方法。call方法的第一个参数会被传递给函数中的this,从第2个参数开始,逐一赋给函数中的参数。

call 继承父类

JavaScript

接下来我们用call方式实现对象的继承

JavaScript

第三种方式:apply()

apply 继承父类

JavaScript

apply方法与call方法很类似,apply方法也是定义在Function对象中的方法,因此我们定义的每个函数都拥有该方法。

apply方法与call方法有一个区别:Parent.apply(this,new Array(username));传递的第二个参数为一个数组,而call方法传递的是一些离散的数据参数。这两个方法并不能说谁好谁坏,要看具体使用场景。

第四种方式:原型链方式(无法给构造函数传递参数)

原型链继承

JavaScript

单纯使用原型链方式的缺点:没有办法传递参数,只有等对象创建完之后再去修改。我们接下来结合其它的方式解决这个问题。

第五种方式:混合方式(推荐)

使用混合方式实现对象的继承

JavaScript

以上这篇JavaScript基础知识点归纳(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

JS 面向对象之继承---多种组合继承详解 这一次要讲组合、原型式、寄生式、寄生组合式继承方式。1.组合继承:又叫伪经典继承,是指将原型链和借用构造函数技术组合在一块的一种继承方式

全面理解闭包机制 varfoo="Hello";varc=(functiona(){functionb(){varbar="World";alert(foo+bar);returnbar;}returnb;})()();alert(foo+c);本实例弹出两次helloworld;一、什么是闭包?官方的解释是:所谓

全面了解JavaScirpt 的垃圾(garbage collection)回收机制 一、垃圾回收机制—GCJavascript具有自动垃圾回收机制(GC:GarbageCollecation),也就是说,执行环境会负责管理代码执行过程中使用的内存。原理:垃圾收集器

标签: javascript零基础

本文链接地址:https://www.jiuchutong.com/biancheng/373541.html 转载请保留说明!

上一篇:老生常谈onBlur事件与onfocus事件(js)(老生常谈的道理)

下一篇:JS 面向对象之继承---多种组合继承详解(js面向对象编程实例)

  • 企业所得税工会经费调整
  • 税收缴款书现在还有吗
  • 附加税费计税依据
  • 收银设备如何入账的
  • 专利在审可以入库吗
  • 利润表中的其他综合收益
  • 增值税一般纳税人税率是多少?
  • 冲销上年计提的住房公积金怎么做账
  • 建筑工程公司是什么意思
  • 公司更名期间账户可以使用吗?
  • 土地增值税清算比例的计算
  • 国外公司怎么付款给国内
  • 公司注册核税后如何建账?
  • 技术转让所得减去成本吗
  • 企业预缴所得税
  • 一个月无纳税凭证怎么处理
  • 加工费计入什么费用
  • 费用,资产,成本,损失的区别
  • 承兑汇票延期托收证明
  • 个人承担的社保费用算在员工工资里吗?
  • 过路费增值税可以抵扣吗
  • 公司账上的钱可以转给法人账上吗
  • 咨询费如何缴纳个税
  • 以前年度的其他应付款不用付怎么处理
  • ipad怎么切换输入法
  • 网页游戏无法打开
  • php cookie 登录
  • 根据新企业会计准则,职工薪酬包括
  • 年终奖发放问题
  • 主营业务收入会计分录例题
  • PHP:parse_ini_file()的用法_Filesystem函数
  • centos7完整版安装
  • 原材料的盘盈与盘亏的会计处理
  • 分布式简介
  • 收到外汇货款
  • php获取北京时间
  • php自定义变量的方法是
  • php 微信公众号自定义菜单
  • 微服务组件面试题
  • 对公账号里面的钱会扣税吗
  • 应交增值税为负数怎么处理
  • 让客户抽奖赠送什么礼物
  • 固定资产售后回租融资租赁利息可以抵扣进项税额么
  • 第9章 内存模型分析
  • 住宿费当月抵扣吗
  • python导入模块的本质
  • 红字信息表重复开具怎么处理
  • 申报个税的流程怎么操作
  • DB2 9(Viper)快速入门
  • c#窗体类属性和方法
  • mysql8编译安装
  • 土地摊销年限是什么意思
  • 个税返还手续费政策
  • 稳岗补贴支付范围
  • 转让股权收入属于收入总额吗
  • 小规模建筑公司开劳务费发票税率
  • 政府补助计入哪个会计科目
  • 自制半成品怎么计算
  • 产品质量问题扣款账务处理
  • 发出存货的计价应当采用
  • 对公账户转私人账户有限额吗
  • 个体工商户建行贷款条件
  • sql server常规错误
  • mysql通过find_in_set()函数实现where in()顺序排序
  • bitronix 连接 MySQL 出现MySQLSyntaxErrorException 的解决方法
  • cmd提示符基础知识
  • centos内存占用进程
  • 中文版windows7的安装方式
  • .fs是什么格式
  • centos做服务器
  • 双系统怎么转移文件
  • win10查看驱动
  • perl获取文件名
  • cocos2dx 3.3 quick lua 实现返回键退出程序
  • js计算时间差毫秒
  • [android] intent实例
  • nodejsorg
  • 手撕发票查询真伪平台
  • 地税局工作人员工资标准多少
  • 地下建筑规定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设