javascript 犀牛书

  1. .代表有待具体

    1. javascript 区分大小写 忽略空格符号 Unicod转义 u00E9==é 转义字符也可以出现在注释中 //单行注释  /**/多行注释
    2. 直接量 8数字 "a"字符 true布尔值 /javascript/gi 正则 null空
    3. 标识符  开头必须为字母,下划线,$    后面,字母,数字,下划线,美元符,技术层面来讲也可以Unicode字符集中的Mn类,Mc类,Pc类
    4. 保留字,关键词,arguments,eval,java的关键词,全局对象等     不能作为标识符(每一种特定运行环境客户端,服务器都有自己的全局属性列表)
    5. 分号:只有在缺少分号无法正常解析代码才会补齐 return break continue则会直接在后面填补分号 ++ --做后缀不在同一行则会做下一行前缀;
    6. 数据类型 分为原始类型   number string boolean    null undefinde  对象类型
    7. 用函数初始化对 称为 构造函数(constructor)
    8. 特殊的三种类 日期(date) 正则(RegExp) 错误(Error)
    9. javascript解释器   当他不在有任何引用指向就会内存管理机制回收
    10. 一元运算符 进制直接量8进制好像有问题 浮点直接量可以科学计数法
    11. Infinity无穷大 超过表达数值上限  被0整除时候
    12. 下溢,能表示的最小值还小的时候
    13. 数据舍入误差.3-.2 != .2-.1
    14. 字符串直接量“one ow”拆分数行 反斜杠和行结束符不算字符直接量 html里写javascrip onclick = "alert( 'thank you ' )"
    15. 转义字符 (有待具体o ) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    16. String对象 +连接符 方法 属性
    17. RegExp()正则表达式 不是javascript基本类型 API特殊对象>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    18. Boolean 真值 假值(空,null,,0)之类
    19. 全局对象:在代码顶端用this指向全局对象,全局属性,全局函数,构造函数 ()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    20. "a" -包装对象--->new String(a);实际上不一定做了这个操作,看起来是这样 对象通过.调用成员 原始数据类型可以读取属性或方法,如果给属性赋值,修改只会发生在临时对象,临时对象不会保留
    21. 不可变的原始值 可变的对象引用 当对象同时引用一个基对象他们才全等
    22. 类型转换(写了文件)
    23. 显示转换 隐式转换>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    24. 对象转换为原始值 布尔值:所有的·对象(数组或函数) 转为true 所有的对象继承两个转换方法一个是toString,valurof,转字符串或数字 就是两种方法里面转
    25. 变量提升,变量作用域 作为属性的变量 严格模式 var声明不可配置不可以delete 不用var是绑定在全局上的可配置
    26. 作用域链
    27. 原始表达式 对象数组初始化表达式 函数表达式 属性访问表达式可以通过点或[] null undefined不能调用属性,调用属性不为对象转换为对象(或者数组) >>>>>>>>>>>>>>>>>>>>>>>感觉就是声明赋值跳过
    28. 调用表达式 函数没有返回值undefiend 先计算函数表达式在计算参数表达式
    29. 对象表达式 后面的括号是传参,不传参可以省略
    30. 运算符 从右至左 从左至右 ~按位求反 三元=三个运算符 希望的操作数
    31. var a="b" 左值a右值b ECMAScript只内置函数返回左值,自定义函数不行 返回a
    32. 运算符: 运算符副作用:先后表达式顺序混乱 优先级问题 赋值运算符影响整个表达式 一元,赋值,三元,从右至左的结合性 运算顺序JavaScript严格从左到右
    33. 算数:无法转换数字转换NAN,整数相除有小数保留 5/2=2.5 0/0=nan没意义 %取模运算 模运算 求余数 "+"运算符 对象转原始值 判断是否字符串
    34. 一元运算符:一元加法(+):把操作数转数字(或者NAN);一元减法(-):操作数改数字,变负数 递增递减 前增量(先赋值,后运算),后增量
    35. 位运算:可以对由数字表示的二进制数据进行更底层的按位运算 按位于&:两个操作数都是一为一 按位或|:只要一个操作数是一为一 按位异():10//true 按位非(~)转为负数减一,左移(<<):10<<2 = 100 二进制数向左移动后面加零相当于乘以二· 右移(>>) 二进制数向右移动后面加零 无符号右移(>>>) 和右移一样(不大清楚)
    36. 相等和不等式
      =:布尔值相同时相等 0=-0 字符串16位编码值相等 两个引用指向一个对象相等 两个值都是null或undefined或NaN不相等
      :nullundefined//true 字符串会转换后比较 '1'==1//true 布尔值会转为0和1比较 对象转原始值比较
    37. 比较运算符
      小于(<):1<2//true 为对象转换 都是字符串 字母表顺序(16位Unicode) 比较 有一个是数字转数字比较
      大于(>):2>1//true 所有的大写ASCII字符都小于ASCII小写字母
      小于等于(<=):2<=2//true
      大于等于(>=):2>2//true
原文地址:https://www.cnblogs.com/zong-zong/p/13553265.html