读书笔记 - js高级程序设计 - 第三章 基本概念
| 启用严格模式 | "use strict" 这是一个 pragma 编译指示 |
| 让编码意图更清晰 | 是一个重要原则 |
| 5种简单数据类型 | Undefined Null Boolean Number String |
| 1种复杂数据类型 | Object |
| 检测数据类型的方法 |
typeof
有如下值:
undefined boolean object string number function
|
| typeof Null | object |
| 意在保存对象还没有保存对象的变量的初始值最好是什么 | null |
| 八进制的第一位必须是 | 0 |
| undefined == null 的结果 是 | true |
| 浮点数值使用注意事项 | 永远不要测试其值 |
| 最大数值 | Number.MAX_VALUE |
| 最小数值 | Number.MIN_VALUE |
| 判断数值是否有穷 | inFinite() |
| NaN 是一个特殊的数值 两特点是 |
涉及它的操作结果都是NaN
和任何值包括它自己 都不相等
|
| 把别的进制数 转为 10进制数 | parseInt( "A", 16) ; |
| 把10进制数 转为 别的进制数据 | num.toString( 16 ) 即转为16进制数 |
| object里有的属性和方法 |
constructor 保存着用于创建当前对象的函数
hasOwnProperty() 不能判断原型中的
isPrototypeOf 用于检查传入的对象是否是当前对象的原型
propertyIsNumerable() 用于检查给定的属性是否能够使用 for-in来枚举
toLocalString 返回对象的字符串表示
toString
valueOf 通常与toString方法返回的值相同
|
| 操作符分4类 |
算术操作符:++ --
位操作符: 非 与 或 异或,左移 右移 无符号右移
关系操作符:
相等操作符
|
| 按位非 NOT |
~num
即取反码
相当于负值减1
|
| 按位与 AND | a&b 都为1才是1 |
| 按位或 OR | a|b 只要有一个为1就是1 |
| 按位异或 XOR | a^a 两位不同才为 1 |
| 左移 |
a << 5
左移不会影响符号位
比如 -2 移 5位 会变成 -64
|
| 有符号的右移 | a >>5 和左移正好相反 |
| 无符号的右移 |
a >>> 5
如果原数是负数,数字会变得非常大,且变为正数
|
| 逻辑非 |
!a
|
| 逻辑与 |
a&&a
|
| 逻辑或 |
a||b
|
| 利用逻辑或的行为 设计默认值 | var result = preferredObj || backupObj |
| 乘性操作符有三个 | 乘法 除法 求模 |
| 加性操作符有两个 | + - ,+可用来拼拼字符串 |
| 关系操作符有4个 | > < >= <= |
| 相等操作符 | == === != |
| 条件操作符 | ? : |
| 赋值操作符 | *= /= %= += -= <<= >>= >>>= |
| if 注意事项 | 一定要用代码块 |
| do while | 后判断 |
| while | 先判断 |
| for 特点 | 里面声明的外部也可以访问 |
| for in |
for( var propName in window ) 输出的属性名的顺序是不可预测的 在使用前 要先检测该对象的值不是null或undefined |
| with | 严格模式下不可以用with |
| switch |
每个case的值不一定是常量,也可以是变量 比较时,使用的是全等操作符 |
| 参数 |
永远是放到一个数组里 可用arguments依次访问 |
| 没有重载 | EcmaScript函数没有签名,因为其参数是由包含零或多个值的数组来表示的 |
读书笔记 - js高级程序设计 - 第三章 基本概念的更多相关文章
- 读书笔记 - js高级程序设计 - 第五章 引用类型
引用类型 和 类 不是一个概念 用typeof来检测属性是否存在 typeof args.name == "string" 需要实验 访问属性的方法 .号和[] 一般情况下要 ...
- 读书笔记 - js高级程序设计 - 第六章 面向对象的程序设计
EcmaScript有两种属性 数据属性 和 访问器属性 数据属性有4个特性 Configurable Enumerable Writable Value 前三个值的默认值都为false ...
- 读书笔记 - js高级程序设计 - 第十一章 DOM扩展
对DOM的两个主要的扩展 Selectors API HTML5 Element Traversal 元素遍历规范 querySelector var body = document.query ...
- 读书笔记 - js高级程序设计 - 第七章 函数表达式
闭包 有权访问另一个函数作用域中的变量的函数 匿名函数 函数没有名字 少用闭包 由于闭包会携带包含它的函数的作用域,因此会比其它函数占用更多的内存.过度使用闭包可能会导致内存占用过多,我们建议读者 ...
- 读书笔记 - js高级程序设计 - 第四章 变量 作用域 和 内存问题
5种基本数据类型 可以直接对值操作 判断引用类型 var result = instanceof Array 执行环境 每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这 ...
- 读书笔记 - js高级程序设计 - 第十五章 使用Canvas绘图
读书笔记 - js高级程序设计 - 第十三章 事件 canvas 具备绘图能力的2D上下文 及文本API 很多浏览器对WebGL的3D上下文支持还不够好 有时候即使浏览器支持,操作系统如果缺缺 ...
- js 高级程序设计 第三章学习笔记——Number数据类型需要注意的事项
1.浮点数值 虽然小数点前面可以没有整数,但是并不推荐这种写法. 由于保存浮点数值需要的内存空间是保存整数值的两倍,因此ECMAScript会不失时机地将浮点数值转化为整数数值.显然,如果小数点后面没 ...
- 读书笔记 - js高级程序设计 - 第十二章 DOM2和DOM3
Node类型的变化 访问元素的样式 myDiv.style.backgroundColor = "red" myDiv.style.width = "100px& ...
- 读书笔记 - js高级程序设计 - 第十章 DOM
文档元素 是文档的最外层元素,在Html页面中,文档元素始终都是<html>元素 在xml中,任何元素都可以是文档元素 Node类型 Node.ELEMENT_NODE 元素 Node ...
随机推荐
- R 读取回归模型的信息
参考博客: http://blog.sina.com.cn/s/blog_8f5b2a2e0101fmiq.html https://blog.csdn.net/huangyouyu523/artic ...
- 10. Regular Expression Matching正则表达式匹配
Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...
- 剑指offer第12题打印从1到n位数以及大整数加法乘法
字符和数字加减就是字符的ASCII码和数字直接加减. 方法一: 1)在字符串操作中给一个整形数字加(字符0)就是把它转化为字符,当然给一个字符减去(字符0)就可以把它转化为数字了:如果确实是最后 ...
- python中numpy矩阵运算操作大全(非常全)!
python中numpy矩阵运算操作大全(非常全) //2019.07.10晚python矩阵运算大全1.矩阵的输出形式:对于任何一个矩阵,python输出的模板是:import numpy as n ...
- Java For 循环
章节 Java 基础 Java 简介 Java 环境搭建 Java 基本语法 Java 注释 Java 变量 Java 数据类型 Java 字符串 Java 类型转换 Java 运算符 Java 字符 ...
- NO7 利用三剑客awk-grep-sed-head-tail等7种方法实践
·seq sequence #序列·sed stream editor #(三剑客老二)流编辑器.实现对文件的增删改替换查. -n #取消默认输出.sed -n '20,30 ...
- LeetCode141 环形链表(Java—HashSet简单应用or双指针)
题目: 判断给出的链表中是否存在环. 思路: 1. 遍历整个链表,将走过的节点的内存地址保存下来,如果再次走到同样的内存地址,说明链表中有环.时间复杂度为O(n). 2. 设置两个指针,fast指针每 ...
- 网卡工作原理和wireshark混杂模式
通过设置网卡为混杂模式就能捕获局域网内所有发包内容,包括非广播包和非发给自己主机的数据包 这是为什么呢? 即主机A发送一个数据包给主机B,我作为主机C怎么也能截获这个数据包呢,原理是什么? 我的网卡为 ...
- 021-PHP常用的数值类型判断函数
<?php //判断数组 $colors = array("red", "blue", "green"); if(is_array($ ...
- 【NOIP2009】Hankson的趣味题
题意:给出 \(a_0\), \(a_1\), \(b_0\), \(b_1\), 求出正整数 \(x\) 的个数,\(x\) 满足: \(gcd(x,a_0)=a_1\) , \(lcm(x, b_ ...