Javascript高级程序设计第三版-笔记
1、JS数值最大值最小值:
>Number.MIN_VALUE
<5e-324
>Number.MAX_VALUE
<1.7976931348623157e+308
判断数值是不是有穷的,可以用isFinite()来判断
坑:1、对浮点数进行高精度计算时,需要把小数变成整数再计算,因为JS中0.1+0.2=0.30000000000000004,可能会有误差。isFinite(0.1+0.2)//true。isFinite(0.1)//true。
2、NaN
任何涉及NaN的操作都会返回NaN,NaN与任何值都不相等,包括本身。isNaN()判断是否为NAN。isNaN(NaN)//true。isNaN("10")//false。isNaN("dusk")//false。0/0返回NaN。
3、数字转换
Number()// Number("") 0 Number("12a") NaN
ParseInt()// ParseInt("") NaN ParseInt("12a") 12
ParseFloat()
4、toString()
null 和 undefined 没有toString放啊。 var a = 10;a.toString("2")//1010 10转成2进制1010
在不知道值是否为null or undefined的时候,可以用String()来转换为字符串。
5、位运算
~按位非 (数值取负后-1) 、& 按位与 、| 按位或 、<<左移 、 >>右移 、 >>>无符号右移 (可移动负数的符号位1)
6、!运算
!NaN //true !null //true !"" //true !undefined
7、 比较运算
NaN和任何数值比,都是false
8、switch
switch用的是全等操作符,不会发生类型转换(10不等于“10”)
9、块级作用域的坑 for循环结束后,i 没被销毁
for(var i = ; i < ; i++){
dosomething(i);
}
alert(i);//
10、作用域链上的变量查询
var a = ;
function foo(){
var a = ;
return a;
}
alert(foo());// 2
//优先使用局部变量,因查找作用域链是从本方法一致往上查找,直到查找到window的全局作用域。当找到后就会停止,所以在找到a=2时就停止了。如果想用a=1,必须window.a
11、数组
a = [,,]
b = a;
a[] = ;
alert()//a=>2,2,3 b=>2,2,3
Concat
a = [,,]
b = a.concat()
a[] = ;
alert()//a=>2,2,3 b=>1,2,3
Javascript高级程序设计第三版-笔记的更多相关文章
- JavaScript高级程序设计第三版.CHM【带实例】
从驱动全球商业.贸易及管理领域不计其数的复杂应用程序的角度来看,说 JavaScript 已经成为当今世界上最流行的编程语言一点儿都不为过. JavaScript 是一种非常松散的面向对象语言,也是 ...
- JavaScript高级程序设计第三版学习笔记(一)之数据类型区分详谈
null.NaN.undefined三者的区别是什么? 在初次接触到JavaScript的时候,傻傻的分不清null.NaN.undefined三者到底区别何在,在实际的项目开发中也因为这个问题而困惑 ...
- JavaScript高级程序设计第三版-读书笔记(1-3章)
这是我第一次用markdown,也是我第一次在网上记录我自己的学习过程. 第一章 JavaScript主要由以下三个不同的部分构成 ECMAScript 提供核心语言功能 DOM 提供访问 ...
- javascript高级程序设计第三版书摘
在HTML 中使用JavaScript <script>元素 在使用<script>元素嵌入 JavaScript 代码时,只须为<script>指定 type 属 ...
- 22.1 高级函数【JavaScript高级程序设计第三版】
函数是JavaScript 中最有趣的部分之一.它们本质上是十分简单和过程化的,但也可以是非常复杂和动态的.一些额外的功能可以通过使用闭包来实现.此外,由于所有的函数都是对象,所以使用函数指针非常简单 ...
- 21.1 XMLHttpRequest 对象【JavaScript高级程序设计第三版】
IE5 是第一款引入XHR 对象的浏览器.在IE5 中,XHR 对象是通过MSXML 库中的一个ActiveX对象实现的.因此,在IE 中可能会遇到三种不同版本的XHR 对象,即MSXML2.XMLH ...
- 14.5 富文本编辑【JavaScript高级程序设计第三版】
富文本编辑,又称为WYSIWYG(What You See Is What You Get,所见即所得).在网页中编辑富文本内容,是人们对Web 应用程序最大的期待之一.虽然也没有规范,但在IE 最早 ...
- DOM 操作技术【JavaScript高级程序设计第三版】
很多时候,DOM 操作都比较简明,因此用JavaScript 生成那些通常原本是用HTML 代码生成的内容并不麻烦.不过,也有一些时候,操作DOM 并不像表面上看起来那么简单.由于浏览器中充斥着隐藏的 ...
- 4.2 执行环境及作用域【JavaScript高级程序设计第三版】
执行环境(execution context,为简单起见,有时也称为“环境”)是JavaScript 中最为重要的一个概念.执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为.每个执行环 ...
随机推荐
- Linux环境下Oracle安装参数设置
前面讲了虚拟机的设置和OracleLinux的安装,接下来我们来说下Oracle安装前的准备工作.1.系统信息查看系统信息查看首先服务器ip:192.168.8.120服务器系统:Oracle Lin ...
- poj 1061 青蛙的约会+拓展欧几里得+题解
青蛙的约会+拓展欧几里得+题解 纵有疾风起 题意 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出 ...
- Django项目与mysql交互进行数据迁移时报错:AttributeError: 'str' object has no attribute 'decode'
问题描述 Django项目启动,当我们执行命令 python manage.py makemigrations 出现如下错误: File , in last_executed_query query ...
- 05.AutoMapper 之配置验证(Configuration Validation)
https://www.jianshu.com/p/5901a5d1ef15 配置验证(Configuration Validation) 手写映射配置代码虽然繁琐,但具有可测试的优点.AutoMap ...
- 搜索框focus 搜索面板显示 点击别处消失 从浏览器别的页面回来消失
开始是设置了回到页面使display:none(离开页面操作失效),但是发现回到页面,面板显示,dom获取却为null,于是做了个延时的处理 currentPage: function() { var ...
- 使用svn未响应卡死的几个原因,commit时checkout时
1.commit 时 很可能是:检索文件内容过多导致,解决:不要在最外层文件夹目录下commit 2.checkout时 很可能是:地址错误
- luffyapi项目 --短信认证的基本操作
一.开通腾讯云短信 SDK 文档 :https://cloud.tencent.com/document/product/382/11672 1.官网注册实名账号:https://cloud.tenc ...
- 关于ARM PC值
PC值(Program Counter). ARM采用流水线来提高CPU的利用效率, 对于三级流水线, 一条汇编指令的执行包括 取值, 译码, 执行三个阶段. 当MOV指令的取指动作完毕后, 进入M ...
- docker常用技巧
1:运行中容器如何保存为一个镜像? docker commit 容器名字 镜像名字 2:怎么给容器增加名字 docker rename 容器id(或名字)name(新名字) 3:docker中的Doc ...
- ADF检验
单位根检验是指检验序列中是否存在单位根,因为存在单位根就是非平稳时间序列了.单位根就是指单位根过程,可以证明,序列中存在单位根过程就不平稳,会使回归分析中存在伪回归. from statsmodels ...