第5 章 引用类型
5.1 Object 类型
5.2 Array 类型
  5.2.1 检测数组
  5.2.2 转换方法
  5.2.3 栈方法
  5.2.4 队列方法
  5.2.5 重排序方法
  5.2.6 操作方法
  5.2.7 位置方法
  5.2.8 迭代方法
  5.2.9 归并方法
5.3 Date 类型
  5.3.1 继承的方法
  5.3.2 日期格式化方法
  5.3.3 日期/时间组件方法
5.4 RegExp 类型
  5.4.1 RegExp 实例属性
  5.4.2 RegExp 实例方法
  5.4.3 RegExp 构造函数属性
  5.4.4 模式的局限性
5.5 Function 类型
  5.5.1 没有重载(深入理解)
  5.5.2 函数声明与函数表达式

  5.5.3 作为值的函数

  5.5.4 函数内部属性
  5.5.5 函数属性和方法
5.6 基本包装类型
  5.6.1 Boolean 类型
  5.6.2 Number 类型
  5.6.3 String 类型
5.7 单体内置对象
  5.7.1 Global 对象
  5.7.2 Math 对象

reference types:
有个部分location methods ,关于indexOf 和 lastIndexOf 的 ,还要看下中文解释

The Date Type  、The RegExp Type  都没有仔细看

The Function Type 当中:

function sum(num1, num2){
    return num1 + num2;
}
alert(sum(10,10));
var anotherSum = sum;
alert(anotherSum(10,10));
sum = null;
alert(anotherSum(10,10)); 

----------------------------------------------------------------------假如改成如下的就会报错了,相当于一个执行前,一个执行后,但是为什么呢?

function sum(num1, num2){
    return num1 + num2;
}
var anotherSum = sum;
sum = null;
alert(anotherSum(10,10)); 

-----------------------------------------------------------------------
sort比较数字的例子,很常见,但是原理不太懂

String Location Methods
可以查找到字母在一句话中的位置:

var stringValue = “Lorem ipsum dolor sit amet, consectetur adipisicing elit”;
var positions = new Array();
var pos = stringValue.indexOf(“e”);

while(pos > -1){
        positions.push(pos);
        pos = stringValue.indexOf(“e”, pos + 1);
}
alert(positions); //”3,24,32,35,52”

------------------------------------------------------------------------------------------------------

var text = “cat, bat, sat, fat”;
result = text.replace(/(.at)/g, “word ($1)”);
alert(result); //word (cat), word (bat), word (sat), word (fat)

(假如把$1  换成是$2 , 或者是$0 都不是很有效的~)
$n  匹配第n个捕获组的子字符串  (2013.3.5)假如我想让$2 可以工作应该如何修改?

call 和 apply的用处(20130901)

除了传递参数
它们真正强大的地方是能够扩充函数赖以运行的作用域。

window.color = "red";
var o = { color: "blue" };
function sayColor(){
alert(this.color);
}
sayColor(); //red
sayColor.call(this); //red
sayColor.call(window); //red
sayColor.call(o); //blue
sayColor.call(o); //blue

当运行sayColor.call(o)时,函数的执行环境就不一样了,因为此时函数体内的this 对象指向了o,于是结果显示的是"blue"。
使用call()(或apply())来扩充作用域的最大好处,就是对象不需要与方法有任何耦合关系。

在9.9的周志里面也有对call的运用

《javascript高级程序设计》第五章 reference types的更多相关文章

  1. JavaScript 高级程序设计 第5章引用类型 笔记

    第五章 引用类型 一.object类型 1.创建方法: 1.使用new 操作符创建 var person=new object() Person.name=”Nicholasa” Porson.age ...

  2. JavaScript高级程序设计第20章JSON 笔记 (学习笔记)

    第二十章 JSON 1.Json 可以表示三种类型的值: 1.简单值: 表示数值:5  表示字符串:“hello wrold”注表示字符串时必须使用双引号 2.对象: {“name”:“mi”,”ag ...

  3. JavaScript高级程序设计第14章表单脚本 (学习笔记)

    第十四章 表单脚本 1.阻止默认表单提交 1.提交表单数据 1.使用type=submit提交按钮 2.使用submit():方法 注意:当用户点击提交按钮时,会触发submit事件,从而在这里我们有 ...

  4. 读书时间《JavaScript高级程序设计》五:DOM

    DOM(文档对象模型)是针对HTML文档的一个API,描绘了一个层次化的节点树,可以添加.移除.修改页面的某一部分. 一个简单的文档结构 <!DOCTYPE html> <html& ...

  5. 《JAVASCRIPT高级程序设计》第一章

    在使用调制解调器的时代,频繁的表单验证对客户端来说是一个很大的负担,javascript,作为一种专门进行表单验证的客户端脚本语言诞生了.到今天,javascript早已超越了当初设定的角色.Java ...

  6. javascript高级程序设计第5章,引用类型

    object类型: 创建object实列的方式有两种,一种是new()方法,一种是对象字面量表示法: 第一种法方:  var obj = new object(); obj.name = 'name' ...

  7. javascript高级程序设计第四章 变量、作用域和内存问题

    变量包含两种,,基本类型和引用类型 基本类型是指一些简单的字段: 引用类型是☞由多个值构成的对象  引用类型的值是保存在内存中的对象,在javascript中是不允许直接访问内存中的位置; 函数的参数 ...

  8. JavaScript高级程序设计:第九章

    第九章 一.使用能力检测 能力检测的目标不是识别特定的浏览器,而是识别浏览器的能力.能力检测的基本模式如下: if ( object.propertyInQuestion ) { //使用object ...

  9. JavaScript高级程序设计:第二章

    在HTML中使用JavaScript 1.<script>元素:向HTML页面中插入JavaScript的主要方法就是使用<scritp>元素.HTML4.01为<scr ...

随机推荐

  1. django之一些feature

    前端之django一些feature 本节内容 cookie session 跨站请求保护 分页 序列化 model模块 CBV和FBV 模板渲染对象 1. cookie cookie 是一种发送到客 ...

  2. jQuery 2.0.3 源码分析Sizzle引擎 - 超级匹配

    声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 通过Expr.find[ type ]我们找出选择器最右边的最终seed种子合集 通过Sizzle.compile函数编译器 ...

  3. ARCGIS自定义下拉列表

    1  创建一个geodatabase数据库 2 点击属性--->Domain-->>输入名称,在下面的属性设置中选择coded value 3  在下面的列表中输入下拉列表中可供选择 ...

  4. JavaBean基础转载

    JavaWeb:JavaBean基础 JavaBean基础 JavaBean简介: 1.JavaBean是一种可以重复使用的类,可以没有用户界面,主要负责业务数据或者处理事物(数据运算.操作数据库) ...

  5. Redis 设计与实现读书笔记一 Redis List

    list结构体 adlist.h/list(源码位置) /* * 双端链表结构 */ typedef struct list { // 表头节点 listNode *head; // 表尾节点 lis ...

  6. web几个高性能框架的简单测试

    参考的这里 压测工具 wrk -t16 -c100 -d30s http://127.0.0.1:8080/rest/hello 测试代码 package main import ( "st ...

  7. ubuntu 14.04 下安装jdk8及 smartgithg

    公司使用git作为源码管理,又需要在ubuntu下工作,然后,自己就找了找,目前ubuntu下的git gui客户端,感觉 smartgit算是其中比较好用的一个,下边是具体安装步骤 说明,smart ...

  8. Travis-CI的初步了解和测试程序的进一步编写

    一. Travis-CI部分 最近基本都在研究Travis-CI的使用.CI是continue integration(持续集成)的缩写,Travis应该是给我们提供免费服务器的组织.下面介绍一下其使 ...

  9. Android Non-UI to UI Thread Communications(Part 2 of 5)

    Original:http://www.intertech.com/Blog/android-non-ui-to-ui-thread-communications-part-2-of-5/ his i ...

  10. Java集合类 java.util包

    概述   软件包  类  使用  树  已过时  索引  帮助  JavaTM Platform Standard Ed. 6  上一个软件包   下一个软件包 框架    无框架           ...