JS高级程序设计(1-3章)-笔记

写在前面

本文记录的是我不熟悉或者我认为值得注意的地方,并不是书上知识点的概括。

第1章 JavaScript简介

  • JS诞生时间:1995年(好年轻…)
  • JS诞生背景:表单数据合法性由服务端验证的用户体验不好,希望能在客户端进行验证
  • JS现在用处:如果没有JS,网页内容只能用于展示,不能与用户进行交互(比如注册,登录)。现在JS主要用于实现网页上的各种交互(其实也就是数据的通讯,把用户的交互数据丢给数据库,又从数据库拿出数据展示给用户)。再就是有些复杂的网页样式/动画也会用JS去实现。再就是canvas画图这种。等等。

ECMA(European Computer Manufacturers Association):欧洲计算机制造商协会

由于不同浏览器中实现的JS不一样,在1997年ECMA指定39号技术委员会负责“标准化一种通用、跨平台、供应商中立的脚本语言的语法和语义”,也就是后来的ECMA-262——定义一种名为ECMAScript的新脚本语言的标准。

ECMAScript与Web浏览器没有依赖关系。宿主环境举例:Web浏览器;Node

一个完整的JS实现是由三部分组成的:

  1. 核心(ECMAScript):脚本语言的基本语法之类的;
  2. 文档对象模型(DOM,Document Object Modal):提供页面内容相关信息和操作接口;
  3. 浏览器对象模型(BOM,Browser Object Modal):提供浏览器相关信息和操作接口;

第2章 在HTML中使用JavaScript

在加载<script>时,浏览器会被堵塞。而由于浏览器在遇到<body>标签时才开始呈现内容,所以一般把<script>放在<body>标签中内容的后面,减少由于加载<script>导致的页面空白时间。

第3章 基本概念

关键字:有特殊用途的词
保留字:以后可能会被用作关键字的词

ECMAScript中5种简单/基本数据类型:UndefinedNullBooleanNumberString;1种复杂数据类型:Object

数据类型为Undefined的值只有一个,即undefined
数据类型为Null的值也只有一个,即null

null表示一个空的对象指针

对于Number一定一定要注意的一点是:JS对小数的计算并不准确,比如0.1 + 0.2的执行结果是0.30000000000000004。在项目中如果需要精确计算小数,可以引入专门处理JS浮点数计算问题的库

Number.MIN_VALUE:最小数值
Number.MAX_VALUE:最大数值

如果某个值超过了范围,会被相应转换为-InfinityInfinity,并且这个值不能参与计算,因为Infinity不是能够参与计算的值

isFinite():判断一个数是否是有穷的

任何涉及NaN的操作都会返回NaN

isNaN():不能被转为数值则返回true,否则false

parseInt():第一个参数为要进行转换的值,第二个参数是转换时的基数/进制。建议始终指定基数

parseFloat():只解析十进制

toString():可以接受一个参数,转换的基数

对象:通过执行new操作符 + 要创建的对象类型的名称来创建(new GirlFriend()送你不谢)

Object类型的每个实例都具有下列属性和方法:

  • constructor:保存着用于创建当前对象的函数,比如GirlFriend()
  • hasOwnProperty(propertyName)propertyName在当前对象实例中是否存在
  • isPrototypeOf(object)object是否是当前对象的原型
  • toLocaleString():返回对象的字符串表示,与执行环境的地区对应
  • toString():返回对象的字符串表示
  • valueOf():返回对象的字符串、数值或布尔值表示,通常与toString()的返回值一样

注意:BOMDOM中的对象是由宿主实现提供和定义的,不一定含有上述属性和方法

完。

    原文作者:null1412
    原文地址: https://segmentfault.com/a/1190000011580835
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞