Javascript高级程序设计第五章 | ch5 | 阅读笔记
基本引用类型
Date
- 在不给定时间的情况下创建Date实例,创建的对象将保存当前的日期和时间。
- 要基于其他时间创建Date对象,必须传入其毫秒时表示
- Date.parse()
- 月/日/年(5/21/2022)
- 月名 日, 年(May 21, 2022)
- 周几 月名 日 年 时:分:秒 时区(Tue May 23 2022 00:00:00 GMT-0700)
- YYYY-MM-DDTHH:mm:ss.sssZ(2019-05-23T00:00:00只适用于兼容ES5的实现)
- Date.UTC(年,月,日,时,分,秒):返回日期的毫秒表示
- Date.parse()
继承的方法
日期格式化方法
日期/时间组件方法
RegExp
原始值包装类型
Boolean
- Boolean会重写valueOf()方法,返回原始值true 或者 false。toString()方法被调用时也会被覆盖
let falseObj = new Boolean(false);
let result = falseObj && true; // 所有对象在bool表达式中都会转换为true
console.log(result); // true
let falseVal = false;
result = falseVal && true;
console.log(result); // false
Number
- 重写了valueOF() toLocalString() toString()
- toFixed() 0~20个小数位
- 科学计数法:toExponential()
- 返回最合理的输出结果:toPrecision()
- isInteger()是否为整数
String
常用方法:
- normalize()方法
- 字符串操作方法
- slice()
- substr()
- substring()
- 第一个参数表示字符串开始位置,第二个参数表示结束位置
- 对于substr()而言,第二个参数表示截取的子字符数量
- 字符串位置方法
- indexOf(str, idx)
- lastIndexOf(str, idx)
- 在字符串中搜索传入的字符串,并返回位置,没找到则返回-1
- indexOf从头开始查找
- lastIndexOf从末尾开始
- 第二个参数的意思是从指定位置开始查找
- 字符串包含方法
- startsWith(str):是否以str开头
- endWith(str):是否以str结尾
- includes(str):是否包含str
- 搜索传入的字符串,并返回一个bool值
- trim()方法:创建字符串的副本,删除前后所有的空格,再返回结果
- repeat(times)方法:返回将字符串拼接times次之后的结果
- padStart(len, str)和padEnd(len, str)方法
- 将字符串用指定str拼接成长度为len的字符串
- padStart是在开头填充
- padEnd是在结尾填充
- 字符串迭代器与解构
let message = 'abc';
let stringIterator = message[Symbol.iterator]();
console.log(stringIterator.next()); // {value: 'a', done: false}
for (const c of message) console.log(c); // a b c
console.log([...message]); // ['a', 'b', 'c']
- 字符串大小写转换
- toLowerCase()
- toLocaleLowerCase()
- toUpperCase()
- toLocaleUpperCase()
- local: 针对特对地区实现,如果不知道代码涉及什么语言,最后使用local
- 字符串模板方法
- match(): 本质上和RegExp对象的exec()方法相同,接受一个参数(可以说正则表达式、RegExp对象)
- search(): 始终返回第一个匹配的位置,其余与match相同
- replace(): 替换
- split(): 根据传入的分隔符将字符串拆分成数组
- localCompare() 方法:实现所在的地区决定了这个方法如何比较字符串
- HTML方法
单例内置对象
Global
/**
* encodeURI()
* encodeURIComponent()
*
* decodeURI() 只对encordURI()编码的字符进行解码
* decodeURIComponent() 解码所有被encodeURIComponent()编码的字符
*/
let url = 'http:// www.azoux.com/azou domy.js'
console.log(encodeURI(url)); // http://%20www.azoux.com/azou%20domy.js
console.log(encodeURIComponent(url)); // http%3A%2F%2F%20www.azoux.com%2Fazou%20domy.js
/**
* eval()方法:这个方法就是一个完整的ECAMScript解释器,它接受一个参数,即一个要执行的JavaScript字符串
* 当解释器发现eval时,会把eval中的代码插入到该位置
* 通过eval调用的代码,属于调用所处的执行上下文
*/
eval('console.log("azoux");');
// 等价于 console.log("azoux");
/**
* Global 对象属性
* 有个表格,基本都是一些构造函数和特殊值
*/
/**
* window对象
* 浏览器将window对象实现为Global对象的代理
* 另一种获取Global对象的方式
*/
let global = function () {
return this;
}();
console.log(global); // window
Math
/**
* Math对象属性: 具体查表
*/
/**
* min()和 max()方法
* 用于确定一组数值的最大最小值
*/
console.log(Math.min(...[1, 2, 3, 4, 5, 6])); // 1
console.log(Math.max(...[1, 2, 3, 4, 5, 6])); // 6
/**
* 舍入方法
* Math.ceil(): 始终向上舍入为最接近的整数
* Math.floor():始终向下舍入为最接近的整数
* Math.round():四舍五入
* Math.fround():返回数值最接近的单精度(32位)表示
*/
/**
* random()方法:随机返回0~1之间的小数
*/
/**
* 其他方法:查表
*/
Javascript高级程序设计第五章 | ch5 | 阅读笔记的更多相关文章
- javascript高级程序设计第三章的一些笔记
[TOC] 1. 语法 1.1 区分大小写 变量.函数名和操作费都区分大小写. 1.2 标识符 标识符指变量.函数.属性的名字,或者函数的参数.标识符按以下规则组合: 第一个字符必须是一个字母,下划线 ...
- 《JavaScript高级程序设计》——第二章在HTML使用JavaScript
这章讲的是JavaScript在HTML中的使用,也就是<script>元素的属性.书中详细讲了async.defer.src和type四个<script>的属性. 下面是对第 ...
- JavaScript 高级程序设计 第5章引用类型 笔记
第五章 引用类型 一.object类型 1.创建方法: 1.使用new 操作符创建 var person=new object() Person.name=”Nicholasa” Porson.age ...
- 《JavaScript 高级程序设计》第一章:简介
JavaScript 历史 JavaScript的诞生的主要是当时的 netspace 公司谋求为自己的浏览器 Navigator 添加一种脚本语言,以便在本地客户端进行一些行为操作,而这一功能的需求 ...
- JavaScript高级程序设计第20章JSON 笔记 (学习笔记)
第二十章 JSON 1.Json 可以表示三种类型的值: 1.简单值: 表示数值:5 表示字符串:“hello wrold”注表示字符串时必须使用双引号 2.对象: {“name”:“mi”,”ag ...
- JavaScript高级程序设计第14章表单脚本 (学习笔记)
第十四章 表单脚本 1.阻止默认表单提交 1.提交表单数据 1.使用type=submit提交按钮 2.使用submit():方法 注意:当用户点击提交按钮时,会触发submit事件,从而在这里我们有 ...
- 读书时间《JavaScript高级程序设计》五:DOM
DOM(文档对象模型)是针对HTML文档的一个API,描绘了一个层次化的节点树,可以添加.移除.修改页面的某一部分. 一个简单的文档结构 <!DOCTYPE html> <html& ...
- 《JAVASCRIPT高级程序设计》第一章
在使用调制解调器的时代,频繁的表单验证对客户端来说是一个很大的负担,javascript,作为一种专门进行表单验证的客户端脚本语言诞生了.到今天,javascript早已超越了当初设定的角色.Java ...
- 《JavaScript高级程序设计》——第一章JavaScript简介
第一章主要讲了JavaScript的诞生和发展.刚刚接触JavaScript的我,似乎对这些内容并不感兴趣,快速看了一遍就开始去看第二章了. 看完第一章,收获也就是了解到JavaScript由ECMA ...
- javascript高级程序设计第5章,引用类型
object类型: 创建object实列的方式有两种,一种是new()方法,一种是对象字面量表示法: 第一种法方: var obj = new object(); obj.name = 'name' ...
随机推荐
- Flink 实时计算在微博的应用
简介: 微博通过将 Flink 实时流计算框架跟业务场景相结合,在平台化.服务化方面做了很大的工作,在开发效率.稳定性方面也做了很多优化.我们通过模块化设计和平台化开发,提高开发效率. 微博机器学习研 ...
- [Ethereum] 浅谈加密商品市场 OpenSea 与 opensea-js
OpenSea 是用于交易以太坊加密商品的网上商店,主要的商品是 ERC721.ERC1155 标准的 Token. 它的特色就在于,只需要一个部署好的智能合约,你就能在 OpenSea 提供的界面上 ...
- dotnet 记 TaskCompletionSource 的 SetException 可能将异常记录到 UnobservedTaskException 的问题
本文将记录 dotnet 的一个已知问题,且是设计如此的问题.假定有一个 TaskCompletionSource 对象,此对象的 Task 没有被任何地方引用等待.在 TaskCompletionS ...
- dotnet 读 WPF 源代码笔记 WPF 是如何做到一套代码兼容多个 .NET Framework 版本
在 .NET Framework 时代里面,有一组有趣的概念,那就是 SDK 和 Runtime 这两个概念.开发模式十分有趣,在开发者设备上,可以指定 .NET Framework 的 SDK 版本 ...
- element-ui表单重置函数 resetFields 无效解决
由element-ui文档中能看到重置表单使用的是如下函数 this.$refs[formName].resetFields(); 但是有时使用它却可能会失效 解决: form-item中要加上pro ...
- NopCommerce 多数据库方案
本文转自:http://www.cnblogs.com/YUTOUYUWEI/p/5538200.html 有时候一个项目需要连接多个数据库,以实现不同数据库的数据在同个项目的共享. 如果已经安装了n ...
- C# - 自建 SDK 的 API 文档
在代码中添加 API 文档 用户在使用类库时,通常需要通过 VS 的 Intellisense 或 F12 反编译查看 API 的注释,借助这些注释来了解如何使用 API.在 C# 源文件中,可以通过 ...
- 一个可一键生成短视频的AI大模型,亲测可用
大家好,我是 Java陈序员. 自从 OpenAI 发布 Sora 文本生成视频模型后,文本生成视频的 AI 技术引起了无数圈内圈外人士的关注和实验. 今天,给大家介绍一个大模型,可一键生成短视频. ...
- 程序是怎样跑起来的_第一章-对程序员来说CPU是什么
通过对第一章的学习,我了解了大体上CPU可以说是电脑的"大脑",即中央处理器.从功能来看可以分为寄存器,控制器,运算器和时钟.在这四个部分中,寄存器是最值得程序员注意的.总的来说, ...
- WEB服务与NGINX(24)- LNMP架构部署wordpress
目录 1. LNMP架构项目实战 1.1 LNMP架构介绍 1.2 LNMP架构部署wordpress 1.2.1 LNMP环境介绍 1.2.2 二进制部署mariadb 1.2.3 部署php-fp ...