红宝书读书笔记 第五章
基本引用类型
Date
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date MDN我觉得就够用了
//计算两个时间差值// 使用 Date 对象
var start = Date.now();// 调用一个消耗一定时间的方法:
doSomethingForALongTime();
var end = Date.now();
var elapsed = end - start; // 以毫秒计的运行时长
RegExp
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions
创建正则表达式的三种方法
/ab+c/i //字面量形式
new RegExp(‘ab+c’,‘i’)
new RegExp(/ab+c/,‘i’)
## 原始值包装类型
为方便操作原始值提供三种特殊的引用类型:Boolean Number String
let s1 = ‘some’
let s2 = s1.substring(2);
//原始值不是对象,不应该有方法
其实等价于
let s1 = new String(‘some’)
let s2 = s1.substring(2);
s1 = null;
```javascript
//区别
let value = '25'
let number = Number(value)//转型函数
console.log(typeof number)//'number'
let obj = new Number(value)
console.log(typeof obj)//object
显示创建原始值包装类型的实例并不推荐
Boolean
let booleanObject = new Boolean(true);
使用很少,不建议使用let falseObj = new Boolean(false)
result = falseObj && true;
console.log(result)//truetypeof falseObj //object
Number
String
字符串方法:
//拼接concat()//提取子字符串
slice()
substr()
substring()//字符串位置方法
indexOf()
lastIndexOf()//字符串包含方法
startsWith()
endsWith()
includes()//删除前后空格
trim()//将字符创复制多少次
repeat()//复制+填充
padStart()
padEnd()//字符串迭代与解构(字符串原型暴露了@@iterator方法,表示可以迭代字符串的每个字符)
let mes = 'abc'
let sIterator = mes[Symbol.iterator]();for(const c of 'abcde') {console.log(c)
}有了迭代器,还可以解构
let mess = 'abc'
console.log([...mess])//大小写转换
toUpperCase()
toLowerCase()//字符串模式匹配方法
search()
match()//替换
replace()//字符串转数组
split()
根据传入的分隔符将字符串拆分成数组//比较
localeCompare()
单例内置对象
内置对象定义:任何由ECMAScript实现提供、与宿主环境无关,并在ECMAScript程序开始执行时就存在的对象。意味着开发者不用显示地实例化内置对象,因为它们已经实例化好了。包括Object、array、string
Global
代码不会显示地访问他。他针对的是不属于任何对象的属性和方法。事实上,不存在全局变量或全局函数这种东西。在全局作用域中定义的变量和函数都会编程Global对象的属性。isNaN()、parseFloat()等都是Global对象的方法
URL编码方法
没错,又跳过了,谁让这书这么厚呢?
eval()方法
这个方法就是一个完整的ECMAScript解释器,接受一个参数,即一个要执行的ECMAScript字符串
eval("console.log('hi')")
将参数解释为实际的ECMAScript语句,通过eval()执行的代码属于该调用所在的上下文,被执行的代码与该上下文拥有相同的作用域链let msg = 'hello'
eval("console.log('msg')")eval()慎用
window对象:无法直接访问Global,但浏览器将window对象实现为Global对象的代理。因此,所有全局作用域中声明的变量和函数都变成了window的属性。
Math 数学方面内容
属性:Math.E …
方法:
min()
max()
round()
ceil()
floor()
fround()
random()...
红宝书读书笔记 第五章相关推荐
- JS红宝书·读书笔记
JavaScript高级程序设计 花了半个多月的时间,终于又把"JS红宝书"又撸了一遍. 第一次读"JS红宝书"还是2015年初学JS的时候,那时候只是把语法部 ...
- 红宝书读书笔记 第八章
对象.类与面向对象编程 属性的类型 内部属性用两个中括号如[ [ Enumerable ] ] 开发者不能直接访问 数据属性 数据属性:数据属性包含一个保存数据值的位置.值会从这个位置读取,也会写入到 ...
- 红宝书读书笔记 第九章
代理与反射 代理感觉就是外围保护的一种感觉,我先对操作进行筛选处理,然后再传给对象 代理基础 创建代理 代理用构造函数创建,接受两个参数,目标对象和处理程序对象 const target = {id: ...
- JavaScript高级程序设计红宝书学习笔记第三章基本概念
第三章 基本概念 本章内容 语法 数据类型 操作符 语句 函数 3.1 语法 3.1.1 区分大小写,ECMAScript中的一切(变量.函数名和操作符)都区分大小写. 3.1.2 标识符 标识符:变 ...
- 《Python从入门到实践》读书笔记——第五章 if语句
<Python从入门到实践>读书笔记--第五章 if语句 1. 一个简单示例 cars = ['audi', 'bwm', 'subaru', 'toyota']for car in ca ...
- 《深度探索C++对象模型》读书笔记第五章:构造析构拷贝语意学
<深度探索C++对象模型>读书笔记第五章:构造析构拷贝语意学 对于abstract base class(抽象基类),class中的data member应该被初始化,并且只在constr ...
- 红宝书背诵笔记 — 基础词
红宝书基础词 基础词-Unit1 基础词-Unit2 基础词-Unit3 基础词-Unit4 基础词-Unit5 基础词-Unit6 基础词-Unit7 基础词-Unit8 基础词-Unit9 基础词 ...
- 红宝书背诵笔记 — 简单基础词语
简单基础词 a开头的简单基础词 b开头的简单基础词 c开头的简单基础词 d开头的简单基础词 e开头的简单基础词 f开头的简单基础词 g开头的简单基础词 h开头的简单基础词 i开头的简单基础词 j开头的 ...
- 《JavaScript高级程序设计(第四版)》红宝书学习笔记(2)(第四章:变量、作用域与内存)
个人对第四版红宝书的学习笔记.不适合小白阅读.这是part2.持续更新,其他章节笔记看我主页. (记 * 的表示是ES6新增的知识点,记 ` 表示包含新知识点) 第四章:变量.作用域与内存 4.1 原 ...
最新文章
- 洛谷P1027 Car的旅行路线 计算几何 图论最短路
- 在ABAP里模拟实现Java Spring的依赖注入
- js高级 — ES6
- PB中函数测试遇到的问题
- Spring应用上下文 - - context
- Android学习笔记(八)
- eclipse 学生管理系统实现(dom4j实现)
- java有哪些字体_java字体有哪些
- 密码学:身份认证详解
- android手机如何设置提高网速,安卓手机设置网络速度的详细操作步骤
- 取自开源,分享于开源 —— 利用CVE-2017-8890漏洞ROOT天猫魔屏A1
- Fastadmin读取数据库配置
- JAVA集成支付宝支付 周期扣费 (证书方式)
- 关于Http请求GBK乱码转化的问题
- js 替换所有指定的字符串
- Linux - samba实现Linux与windows文件共享——共享文件夹目标文件访问权限被拒绝解决方案(超详细,看不懂你怪我)
- https 自签名SSL证书
- pcb线路板制作过程分析
- AJ-Report项目分析(7)
- App Inventor 2 游戏开发最佳入门,仅27个代码块