位置: 编程技术 - 正文

javascript学习笔记(一)基础知识(javascript教程)

编辑:rootadmin

推荐整理分享javascript学习笔记(一)基础知识(javascript教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript总结笔记,javascript教程完整版,javascript教程完整版,javascript如何学,javascript怎么学,javascript基础笔记,javascript学习指南,javascript基础笔记,内容如对您有帮助,希望把文章链接给更多的朋友!

基本概念

延迟脚本

HTML4.0.1中定义了defer属性,它的用途是表明脚本在执行时不会影响页面的构造。也就是说,脚本会延迟到整个页面都解析完毕后再执行。因此,在<script>元素中设置defer属性,相当于告诉浏览器立即下载,但延迟执行。在XHTML文档中,要把defer属性设置为defer=“defer"

异步脚本

html5为<script>定义了async属性。整个属性与defer属性类似,都用于改变处理脚本的行为。同样,与defer类似,async只适用于外部脚本文件,并告诉浏览器立即下载文件。但与defer不同的是,标记为async的脚本并不保证按照指定他们的先后顺序执行。指定async的目的是不让页面等待脚本文件下载和执行,从而异步加载页面其他内容。因此,建议异步脚本不要再加载期间操作DOM

区分大小写

ECMASCript中的一切(包括变量,函数名和操作符)都区分大小写。

1. JScript 的变量

变量在第一次用到时就设置于内存中,便于后来在脚本中引用。使用变量之前先进行声明。可以使用 var 关键字来进行变量声明。

var count, amount, level; // 用单个 var 关键字声明的多个声明。

变量命名

变量名包括全局变量,局部变量,类变量,函数参数等等,他们都属于这一类。

变量命名都以类型前缀+有意义的单词组成,用驼峰式命名法增加变量和函式的可读性。例如:sUserName,nCount。

前缀规范:每个局部变量都需要有一个类型前缀,按照类型可以分为:

JScript 是一种区分大小写的语言。创建合法的变量名称应遵循如下规则:

注意第一个字符不能是数字。后面可以跟任意字母或数字以及下划线,但不能是空格变量名称一定不能是 保留字。

javascript是一种弱类型语言,JavaScript 会忽略多余的空格。您可以向脚本添加空格,来提高其可读性。

var是javascript的保留字,表明接下来是变量说明,变量名是用户自定义的标识符,变量之间用逗号分开。

如果声明了一个变量但没有对其赋值,该变量存在,其值为Jscript 值 undefined。

强制类型转换

在 Jscript 中,可以对不同类型的值执行运算,不必担心 JScript 解释器产生异常。相反,JScript 解释器自动将数据类型之一改变(强制转换)为另一种数据类型,然后执行运算。例如:

要想显式地将字符串转换为整数,使用 parseInt 方法。要想显式地将字符串转换为数字,使用 parseFloat 方法。

JavaScript 变量的生存期:当您在函数内声明了一个变量后,就只能在该函数中访问该变量。当退出该函数后,这个变量会被撤销。这种变量称为本地变量。您可以在不同的函数中使用名称相同的本地变量,这是因为只有声明过变量的函数能够识别其中的每个变量。如果您在函数之外声明了一个变量,则页面上的所有函数都可以访问该变量。这些变量的生存期从声明它们之后开始,在页面关闭时结束。

js变量思维导图

2.js的数据类型

jscript 有三种->主要数据类型、两种->复合数据类型和两种->特殊数据类型。

主要(基本)数据类型

复合(引用)数据类型

特殊数据类型

字符串数据类型:字符串数据类型用来表示 JScript 中的文本。在js中,虽然双引号("")和单引号('')均可表示字符串,而且它们几乎没有任何区别。但只使用双引号("")来表示字符串被认为是最佳的。

一个字符串值是排在一起的一串零或零以上的 Unicode 字符(字母、数字和标点符号)。

什么是Unicode?

Unicode为每个字符都提供了唯一的数值,不管是什么平台、什么程序或什么语言。开发unicode是为了给处理世界上存在的所有字符提供统一的编码。

数值数据类型

我们需要明白一点,JScript 内部将所有的数值表示为浮点值,因此,在 Jscript 中整数和浮点值没有差别。

Boolean数据类型

布尔(逻辑)只能有两个值:true 或 false。

javascript学习笔记(一)基础知识(javascript教程)

js数组和对象

详情看我这篇文章->javascript学习总结— —数组和对象部分

Null 数据类型:可以通过给一个变量赋 null 值来清除变量的内容。

Jscript中 typeof 运算符将报告 null 值为 Object 类型,而非类型 null。

null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

Undefined 数据类型:

如下情况将返回 undefined 值:

null和undefined的区别

ECMAScript认为undefined是从null派生出来的,所以把它们定义为相等的。

null与undefined的类型是不一样的,所以输出"false"。而===代表绝对等于,在这里null === undefined输出false

另外,这里介绍一种比较重要的数据类型——引用数据类型

引用数据类型

javascript引用数据类型是保存在堆内存中的对象,JavaScript不允许直接访问堆内存空间中的位置和操作堆内存空间,只能通过操作对象在栈内存中的引用地址。所以引用类型的数据,在栈内存中保存的实际上是对象在堆内存中的引用地址。通过这个引用地址可以快速查找到保存在堆内存中的对象。

下面我们来演示这个引用数据类型赋值过程

自然,给obj2添加name属性,实际上是给堆内存中的对象添加了name属性,obj2和obj1在栈内存中保存的只是堆内存对象的引用地址,虽然也是拷贝了一份,但指向的对象却是同一个。故而改变obj2引起了obj1的改变。

基本类型值指的是那些保存在栈内存中的简单数据段,即这种值完全保存在内存中的一个位置。

而引用类型值则是指那些保存在堆内存中的对象,即变量中保存的实际上只是一个指针,这个指针指向内存中的另一个位置,该位置保存对象。

简而言之,堆内存存放引用值,栈内存存放固定类型值。

在 ECMAScript 中,变量可以存在两种类型的值,即原始值和引用值。原始值存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置。引用值存储在堆(heap)中的对象,也就是说,存储在变量处的值是一个指针(point),指向存储对象的内存处。

3.JScript 的运算符

优先级:指运算符的运算顺序,通俗的说就是先计算哪一部分。结合性:同一优先级运算符的计算顺序,通俗的说就是从哪个方向算起,是左到右还是右到左。

数据类型转换

String() 转换为字符串类型Number() 转换为数字类型Boolean() 转换为布尔类型

parseInt:将字符串转换为整数。从字符串的开头开始解析,在第一个非整数的位置停止解析,并返回前面读到所有的整数。如果字符串不是以整数开头的,将返回NaN。如:parseInt(“ hi”)返回的值是:,parseInt("hi")返回的值是:NaN。parseFloat:将字符串转换为浮点数。 从字符串的开头开始解析,在第一个非整数的位置停止解析,并返回前面读到所有的整数。如果字符串不是以整数开头的,将返回NaN。如:parseFloat(".5 hi") 返回的值是:.5,parseFloat("hi .5")返回的值是:NaN。

4.js流程控制

对于js流程控制语句,这里只讲几个比较难懂的。其他不赘述。等下附上一张思维导图。1.for...in 语句对应于一个对象的每个,或一个数组的每个元素,执行一个或多个语句。

参数:

variable:必选项。一个变量,它可以是 object 的任一属性或 array 的任一元素。object, array:可选项。要在其上遍历的对象或数组。statement:可选项。相对于 object 的每个属性或 array 的每个元素,都要被执行的一个或多个语句。可以是复合语句。

虽然条件控制语句(如if语句)只在执行多条语句的情况下才要求使用代码块(左花括号"{"开头,右花括号"}"结尾),但最佳实践是始终使用代码块。

js流程控制语句思维导图

5.js函数

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

Jscript 支持两种函数:一类是语言内部的函数,另一类是自己创建的。JavaScript 函数允许没有参数(但包含参数的小括号不能省略),也可以向函数传递参数供函数使用。

更多关于函数的知识请访问我的另一篇文章:javascript学习大总结(四)function函数部分

对象的组成

最后,再附上一张前辈总结的思维导图:

javascript学习笔记(二)数组和对象部分 javascript对象部分一:基础部分1.JavaScript中所有变量都是对象,除了两个例外null和undefined。2.Jscript支持四种类型的对象:内部对象、生成的对象、宿主给

让人蛋疼的JavaScript语法特性 在知乎上看到的有人发布的和javascript有关的试题,和大家分享下,虽然是N久前的事了,但这些题相当经典,不免让人觉得javascript真是门蛋疼的语言。1.

javascript学习笔记(三)BOM和DOM详解 js组成我们都知道,javascript有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异。1.

标签: javascript教程

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

上一篇:Javascript基础知识(三)BOM,DOM总结(javascript零基础)

下一篇:javascript学习笔记(二)数组和对象部分(javascript怎么学)

  • 个人所得税应纳税额怎么计算
  • 业务招待费福利费怎么算超支
  • 报税以及注销公司的注意事项?
  • 运输开票的税点是多少
  • 企业缴纳个人所得税比例
  • 水利基金申报表减除项填什么
  • 每年的第一季度
  • 自行建造固定资产中的自营工程,在领用工程物资
  • 文化传媒公司取名字不带文化
  • 资本化支出加计摊销形成的差异
  • 生产企业原材料的订购与运输论文
  • 企业替员工缴纳商保家财险
  • 公司车辆计提是含税还是不含税?
  • 小微企业所得税优惠政策最新2023
  • 企业租车费可以抵扣吗
  • 增值税减除后附加税计算方法
  • 公司股权转让应纳税额怎么算
  • 工会有纳税号吗
  • 增值税普通发票可以抵扣吗
  • 工程建造过程中发生的在建工程人员工资180万尚未支付
  • 存货跌价准备转销
  • 增值税普票当月开错了怎么办
  • 增值税发票为什么要勾选认证
  • 计提理财利息分录
  • 非限定性净资产相当于哪个科目
  • xp系统电脑关机后又重启怎样处理
  • 小规模企业亏损情况说明范文
  • 装修费怎么记会计科目
  • vue的后端
  • 用php生成一个txt文件
  • 低代码框架开发
  • vue路由传参的几种方式
  • 如何在windows server2016中禁用域用户账户
  • 外聘人员怎么申报个税
  • 辞退员工福利
  • phpcms专题页面模板
  • Windows7下Microsoft SQL Server 2008安装图解和注意事项
  • 法人工资应该怎么处理
  • MySQL数据库性能优化
  • 公司自主研发新能源汽车
  • 纳税人及时提供信息
  • 房地产企业 预缴
  • 公立幼儿园保育员招聘条件
  • 自助餐怎么核算成本
  • 小规模纳税人进项票可以抵扣吗
  • 公司年底奖金怎么计算
  • 以前年度生产成本怎么转为研发费用
  • 工会经费可以购买办公用品吗?
  • 劳动关系与劳务关系的联系与区别
  • 用于研发购买的云服务器应计入研发费用直接投入里吗
  • 建安类资质指什么资质
  • 电子承兑汇票是什么
  • 资产减值损失是费用吗
  • mysql删除表数据怎么恢复
  • xp系统操作全程图解
  • mac识别文字软件
  • linux修改系统日期命令
  • win7系统按Ctrl+Shift不能切换输入法的图文教程
  • win7搜索选项
  • win7系统的桌面图标怎么调出来
  • win10系统玩英雄联盟可以吗
  • ComboBox 和 DateField 在IE下消失的解决方法
  • jqueryui easyui
  • linux怎么添加新用户
  • 用python编写程序
  • 低端显卡n卡设置
  • nodejs开发gui
  • shell 数组变量
  • 播放一个灵异电影
  • jquery截取字符串的方法
  • nodejs 模块
  • 简单的jquery插件实例
  • js实现左右拖动功能
  • javascript函数中的参数,也可以称之为下面哪项内容?
  • 如何设置python
  • 跟踪快件
  • 农业部利剑行动
  • 破产清算处置资产增值税
  • 山西土地增值税清算
  • 如果企业所得税没有做计提怎么办?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设