《JavaScript语言精粹》笔记
0、JavaScript的简单数据类型包括数字、字符创、布尔值(true/false)、null和undefined值,其它值都是对象。
1、JavaScript只有一个数字类型,它在内部被表示为64位的浮点数。没有分离出整数,所以1和1.0的值相同。
2、NaN是一个数值,表示一个不能产生正常结果的运算结果。NaN不等于任何值,包括它本身。可以用函数isNaN(number)检测NaN,但是建议用isFinite()来检测某值是否是数字。
- typeof NaN === ‘number’ //true
- NaN === NaN //false
- NaN !== NaN //true
- isNaN(0) isNaN(‘0′) //false
- isNaN(NaN) isNaN(‘oops’) //true
3、JavaScript没有字符类型。要表示字符,只需创建仅包含一个字符的字符串即可,一旦被创建,就是不可变的。在被创建的时候,Unicode是一个16位的字符集,所以JavaScript中的所有字符都是16位的。
4、false、null、undefined、空字符串、0、NaN都被认为是false。除此之外的其它值都是true,包括’false’、new Boolean(false)。
5、typeof运算符产生的值有:’number’、’string’、’boolean’、’undefined’、’function’、’object’。对于数组或null,typeof均返回’object’。
6、若第一个运算数是假,&&返回第一个运算数的值,反之,返回第二个;若第一个运算数是真,||返回第一个运算数的值,反之,返回第二个;
7、arguments拥有一个length属性,但不是数组,它没有任何数组的方法。
8、用于处理正则的方法:regexp.exec()、regexp.test()、string.match()、string.replace()、string.search()和string.split()【可参见:JavaScript正则表达式】
9、正则表达式因子:\ / [ ] ( ) { } ? + * | . ^ $。若要匹配因子,在字面量中用\进行转义,在RegExp对象中则双写\。注意\前缀不能使字母或数字字面化。
10、正则表达式分组
- 捕获型:一个捕获型分组是一个被包围在圆括号中的正则表达式分支。任何匹配这个分组的字符都会被捕获。每个捕获型分组都被指定了一个数字。1是第一个捕获分组,2是第二个,依此类推。
- 非捕获型:非捕获型分组带 ?: 前缀。它仅做简单的匹配,并不捕获匹配文本,也不干扰捕获型分组的编号
- 向前正向匹配:带 ?= 前缀,类似于非捕获型分组,但在这个组匹配之后,文本会倒回到它开始的地方,实际上不匹配任何东西。
- 向前负向匹配:带 ?! 前缀 ,类似于向前正向匹配,但是只有它匹配失败时它才继续向前进行匹配
11、关于 == 的有趣例子
- ‘ ‘ == ‘0’ //false
- 0 == ‘ ‘ //false
- 0 == ‘0’ //true
- false == ‘false ‘ //false
- false == ‘ 0′ // true
- false == undefined //false
- false == null //false
- null == undefined //true
- ‘ \t\r\n ‘ == 0 //true
《JavaScript语言精粹》笔记的更多相关文章
- HTML+CSS笔记 CSS笔记集合
HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...
- CSS笔记--选择器
CSS笔记--选择器 mate的使用 <meta charset="UTF-8"> <title>Document</title> <me ...
- HTML+CSS笔记 CSS中级 一些小技巧
水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...
- HTML+CSS笔记 CSS中级 颜色&长度值
颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...
- HTML+CSS笔记 CSS中级 缩写入门
盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...
- HTML+CSS笔记 CSS进阶再续
CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...
- HTML+CSS笔记 CSS进阶续集
元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...
- HTML+CSS笔记 CSS进阶
文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...
- HTML+CSS笔记 CSS入门续集
继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...
- HTML+CSS笔记 CSS入门
简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...
随机推荐
- P4812 D’s problem(d)
P4812 D’s problem(d)From: admin 时间: 1000ms / 空间: 65536KiB / Java类名: Main 背景 NOIP春季系列课程 描述 小D是一名魔法师,它 ...
- BZOJ 4198: [Noi2015]荷马史诗 哈夫曼树 k叉哈夫曼树
https://www.lydsy.com/JudgeOnline/problem.php?id=4198 https://blog.csdn.net/chn_jz/article/details/7 ...
- BZOJ.2668.[CQOI2012]交换棋子(费用流zkw)
题目链接 首先黑白棋子的交换等价于黑棋子在白格子图上移动,都到达指定位置. 在这假设我们知道这题用网络流做. 那么黑棋到指定位置就是一条路径,考虑怎么用流模拟出这条路径. 我们发现除了路径的起点和终点 ...
- 16、Redis手动创建集群
写在前面的话:读书破万卷,编码如有神 --------------------------------------------------------------------------------- ...
- LPC-LINK 2 Board IO TABLE
- NXP ARM Vector Table CheckSum
Signature Creator for NXP Cortex-M Devices Algorithm for creating the checksum The reserved Cortex-M ...
- 【Go入门教程3】基本类型 和 高级类型
基本类型 Go 有很多预定义类型,这里简单地把它们分为 基本类型 和 高级类型.Go 的基本类型并不多,而且大部分都与整数相关,如下表所示: 名 称 宽度(字节) 零 值 说 明 bool 1 fal ...
- [golang 易犯错误] golang 局部变量初始化:=的陷阱
我们知道,golang中局部变量初始化方法(使用“:=”创建并赋值),让我们在使用变量时很方便.但是,这也是易犯错误的地方之一.特别是这个初始化符还支持多个变量同时初始化,更特别的是它还支持原有变量赋 ...
- Android Studio 怎样打JAR包
Android Studio 怎样打JAR包 在eclipse中我们知道怎样将一个项目导出为jar包,供其他项目使用. 在AS中能够通过改动gradle才处理. 我们新建一个项目MakeJar,在项目 ...
- delphi TOnFormVisibleChangeEvent 事件应用
TGQIFileMgrForm = class(TForm) 定义 property OnVisibleChange: TOnFormVisibleChangeEvent read FOnVisibl ...