第二章 语法结构

        2.1 js区分大小写,html不区分大小写

        2.5 注意分号,如果没有分号,解释器会试图解析js,并在不能解析的地方加分号

第三章 值和变量

        js数据类型分两类:原始类型(数字,字符串,布尔值)和对象类型。

        两个特殊的原始值:undefined,null

        3.1 数字

            js不区分整型和浮点类型,所有数字都是浮点数值

            infinity 最大值  -infinity 最小值

            1/0=infinity ,-1/0=-infinity ,0/0=Nan

            js中的非数字值与任何值都不相等,所以 x==NaN无法判断x是否为NaN,用x!=x

            Math对象,包含常用数字操作

            Date对象,包含日期操作

        3.2 文本

            字符串的长度是其所含16位值的个数

            字符串的常用方法:charAt(),substring(),indexOf(),toUpperCase()

            Regex对象 模式匹配

        3.4 null和undefined

            null是一个特殊的对象,typeof(null)==object,含义是“无值”

            undefined 表明变量未定义,没有初始化。

                没有返回值的函数返回undefined

            null==undefined ,都表示“值的空缺”

        3.5 全局对象

            当js解释器启动时(任何web浏览器加载新页面时),它将创建一个新的全局对象,并给它一组初始属性:

                  全局属性,比如:undefined,infinity,NaN

                  全局函数,比如:isNaN(),parseInt(),eval()

                  构造函数,比如:Date(),Regex(),String(),Object(),Array()

                  全局对象,比如:Math,JSON

            可以通过别名“Global”来找到这些全局对象

        3.6 包装对象

var s="asd";
s.len=4;
alert(s.len);//undefined,因为s相当于一个临时对象,s.len执行完之后就释放了
var ss=new String("asd");
ss.len=4;
alert(ss.len);//4   ,因为ss是一个对象

        3.7 不可变的原始值和可变的对象引用

             js的原始值(undefined,null,布尔,数字,字符串)和对象有本质的区别,原始值不可变,注意字符串。

             原始值的比较是值的比较,对象的比较是引用的比较

        3.8 类型转换

字符串 数字 布尔 对象
undefined
null
"undefined"
"null"
NaN
0
false
false
throw TypeError
throw TypeError
true
false
"true"
"false"
1
0
  new Boolean(true)
new Boolean(false)
""
"1.2"
"one"
  0
1.2
NaN
false
true
true
new String("")
new String("1.2")
new String("one")
0
-0
NaN
Infinity
-Infinity
1
"0"
"-0"
"NaN"
"Infinity"
"-Infinity"
"1"
  false
false
false
true
true
true
new Number(0)
new Number(-0)
new Number(NaN)
new Number(Infinity)
new Number(-Infinity)
new Number(1)
{}(任意对象)
[](任意数组)
[9](一个数字元素)
['a'](其他数组)
function(){}
""
"9"
使用join方法
0
9
NaN
NaN
true
true
true
true
true
 

       

        3.8.3 对象转换为原始值

            1.默认的toString()方法

            2.特定版本的toString()。如,函数类返回这个函数的实现,日期类返回日期和时间,RegExp类返回正则表达式直接量

        3.10 变量作用域

            1.函数作用域替代块级作用域

            2.变量提前声明

var scope="全局"

function a(){

    alert(scope);//输出undefined

    var scope="局部";

    alert(scope);//输出"局部"
}

a();

             3.使用var声明一个全局变量时,这个属性是不可配置的无法delete.而用一个未声明的变量赋值的话,js会自动创建一个全局对象的可配置的属性

             4.作用域链

重温《js权威指南》 第2-3章的更多相关文章

  1. 《JS权威指南学习总结--第九章 类和模板》

    内容要点: 一. 1.第六章详细介绍了JS对象,每个JS对象都是一个属性集合,相互之间没有任何联系.在JS中也可以定义对象的类,让每个对象都共享某些属性,这种"共享"的特性是非常有 ...

  2. 《JS权威指南学习总结--第二章词法结构》

    第二章词法结构 内容要点: 一.注释 1. //表示单行注释 2. /*这里是一段注释*/ 3.一般编辑器里加注释是:选中要加注释的语句,按 ctrl+/ 二.直接量 所谓直接量,就是程序中直接使用的 ...

  3. 【vue.js权威指南】读书笔记(第一章)

    最近在读新书<vue.js权威指南>,一边读,一边把笔记整理下来,方便自己以后温故知新,也希望能把自己的读书心得分享给大家. [第1章:遇见vue.js] vue.js是什么? vue.j ...

  4. 《JS权威指南学习总结--1.1语言核心》

    1.1语言核心 --本节主要介绍<js权威指南>基础部分各章讲解内容和一些简单的示例 本小节内容: 一.第二章讲解js注释.分号和Unicode,第三章主要讲解js变量和赋值 简单示例: ...

  5. 《JS权威指南学习总结》

    JS权威指南学习总结:http://www.cnblogs.com/ahthw/category/652668.html

  6. 《JS权威指南学习总结--开始简介》

    本书共分成了四大部分: 1.JS语言核心 2.客户端JS 3.JS核心参考 4.客户端JS核心参考 其中 <JS权威指南学习总结--1.1语法核心> 是:第一部分JS语言核心 各章节重点 ...

  7. Node.js权威指南学习记录

    学习nodeJS权威指南的学习记录 导航: 1.console模块 2.全局变量 3.Buffer对象 4.事件对象 5.网络请求 6.文件操作对象 一. COMMON.js的学习.(commonJS ...

  8. HTTP权威指南阅读记录 - 第一章

    最近终于开始看<HTTP权威指南>了,第一章主要是简介一些基本的概念.下面列出一些常用,但还不是很了解的简单概念. 一.常见概念: 1.媒体类型 因特网上有数千种不同的数据类型,HTTP仔 ...

  9. 【HTTP权威指南】第1 章 HTTP 概述

    1.1 HTTP--因特网的多媒体信使 ................................................................................ ...

随机推荐

  1. 【分享】生成Revit扩展的addin文件小工具

    在进行Revit二次开发的时候,加载命令/程序使用的是添加addin文件的方式,每次都需要手动的写,而且参数有好多,很不方便.于是乎我有了写一个小工具的想法.进过研究终于完成了.主要使用RevitAd ...

  2. Android HttpClient GET或者POST请求基本使用方法(转)

    在Android开发中我们经常会用到网络连接功能与服务器进行数据的交互,为此Android的SDK提供了Apache的HttpClient来方便我们使用各种Http服务.这里只介绍如何使用HttpCl ...

  3. C#取枚举描述

    一直都觉得枚举是个很不错的东西,可以给我们带来很多方便,而且也增加代码的可读性. 我在之前已经介绍过枚举的简要应用了,再次再来写下怎么获取枚举的描述. 源码如下: 首先,我们定义个含有描述的枚举类型 ...

  4. SharePoint 2010 用xsl文件定制列表样式

    有时候我们不希望列表用默认的方式显示,要我们自定义的方式定制.其中有一种方式是使用xsl文件. 在AllItems.aspx页面中,列表是以webpart的形式显示在页面上的,webpart类型是Xs ...

  5. 13.首次安装CY7C68013A驱动失败记(结果竟然是这样)

    原文地址:首次安装CY7C68013A驱动失败记(结果竟然是这样)作者:孙茂多 今天把68013A-56焊接在CCD2的CPLD PCB上,配套的EEPROM存储器还没有焊接上,所以想用它试验一下Cy ...

  6. linux内核分析之fork()

    从一个比较有意思的题开始说起,最近要找工作无意间看到一个关于unix/linux中fork()的面试题: #include<sys/types.h> #include<stdio.h ...

  7. 百度翻译API

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs& ...

  8. jQuery Dialog弹出层对话框插件

    Dialog.js的相关注释已经添加,可以按照注释,进行相关样式的修改,适用于自定义的各个系统! dialog.js /** * jQuery的Dialog插件. * * @param object ...

  9. 使用python远程登录

    最近要使用python做一个在web上管理交换机的程序,需要远程登录,就查了点资料,由于还没有搞到交换机,就先用自己的机器测试一下. 首先python的标准库中包含telnet,用起来也很方便,查看一 ...

  10. 【转载】Web应用工作原理

    问题描述:           Web应用工作原理   问题解决:          参考资料:http://blog.csdn.net/lcore/article/details/8964642   ...