@by Ruth92(转载请注明出处)

第1章 简介

模式

模式:是指一个通用问题的解决方案。

  • 设计模式
  • 编码模式
  • 反模式:常见的、引发问题比解决的问题更多的一种方法。

JavaScript 基本概念

  • JS 五基本种类型(不是对象):

    • 数值类型(number

    • 字符串类型(string

    • 布尔类型(boolean

    • 空类型(null

    • 未定义类型(undefined

    • 其中,number, string, boolean 有对应的以基本类型封装形式体现的对象表示,它们的值可以通过程序员或者位于幕后的 JavaScript 解析器来实现向对象的转换。

  • 在 JavaScript 中,一旦定义好了变量,同时也就已经正在处理对象了。

    • 首先,该变量会自动成为内置对象的一个属性,成为激活对象。

    • 该变量实际上也是伪类,因为它拥有其自身的属性,该属性决定了该变量是否可以被修改、被删除和在一个 for-in 循环中进行枚举。

  • 对象:一个对象仅仅是一个容器,该容器包含了命名的属性、键-值对(大多数)的列表,其中的属性可以是函数(函数对象,函数有属性和方法)。

  • 对象主要有两种类型:

    • 原生的——ECMAScript标准中描述;

    • 主机的——在主机环境中(如浏览器环境)定义

    • 原生的对象可以进一步分为:内置对象(如数组、日期对象等)和用户自定义对象(如 var o = {} 等)

    • 主机对象包含 windows 对象和所有的 DOM 对象。

没有类

一个“空对象”实际上并不是完全空白的,它实际上是包含有一些内置的属性,但是没有其自身的属性。

"Gang of Four"书中的一条通用规则:

尽量多使用对象的组合,而不是使用类的继承。——>通过已有的对象组合来获取新对象,是比通过很长的父-子继承链来创建新的对象更好的一种方法。

Console

该对象不是 JavaScript 语言的一部分,而是指当今大多数浏览器都提供的一个运行环境。

log() 方法:打印所有传递过来的参数;

console.log('test', {}, [1,2,3]);

dir() 方法:枚举传递过来的对象,并打印出所有属性。

console.dir({one:1, two:{three:3}});

《JavaScript模式》第1章 简介的更多相关文章

  1. Javascript模式(第一章简介)------读书笔记

    一:模式 模式是一个通用问题的解决方案,可以提供一个更好的实践经验.有用的抽象化表示和解决一类问题的模板. 本书主要讨论如下三种类型的模式 1 设计模式:可复用面向对象软件的基础,包括singleto ...

  2. 读书笔记 - javascript 高级程序设计 - 第一章 简介

      第一章 简介   诞生时间 1995 最初用途 客服端验证 第一版标准 注意是标准 1997年 Ecma-262  一个完整的js实现由三部分组成 ECMAScript DOM 文档对象模型 BO ...

  3. Javascript模式(第二章基本技巧)------读书笔记

    本章主要帮助大家写出高质量的JS代码的方法,模式和习惯,例如:避免使用全局变量,使用单个的var变量声明,缓存for循环的长度变量length等 一.尽量避免使用全局变量 1 每一个js环境都有一个全 ...

  4. 【读书笔记】读《JavaScript模式》 - 函数复用模式之现代继承模式

    现代继承模式可表述为:其他任何不需要以类的方式考虑得模式. 现代继承方式#1 —— 原型继承之无类继承模式 function object(o) { function F() {}; F.protot ...

  5. JST(JavaScript Trimpath)前端模板引擎简介

    JST(JavaScript Trimpath)前端模板引擎简介及应用 今天在做某系统日志列表的时候用到了这个玩意儿.刚开始只是根据别人的例子照葫芦画瓢完成了日志列表及对应详情,晚上有空了才仔细去网上 ...

  6. 初涉JavaScript模式系列 阶段总结及规划

    总结 不知不觉写初涉JavaScript模式系列已经半个月了,没想到把一个个小点进行放大,竟然可以发现这么多东西. 期间生怕对JS的理解不到位而误导各位,读了很多书(个人感觉JS是最难的oo语言),也 ...

  7. AngularJS——第1章 简介

    第1章 简介 由谷歌公司开发维护的前端MVC框架,克服了HTML在构建应用上的诸多不足,降低了开发成本,提高了效率. 一个框架 以数据和逻辑作为驱动 AngularJS核心特性:模块化,双数据绑定,语 ...

  8. javascript进阶课程--第二章--对象

    javascript进阶课程--第二章--对象 学习要点 理解面向对象的概念 掌握对象的创建方法 掌握继承的概念和实现方法 基本概念 对象究竟是什么?什么叫面向对象编程? 对象是从我们现实生活中抽象出 ...

  9. 《JavaScript 模式》知识点小抄本(下)

    介绍 最近开始给自己每周订个学习任务,学习结果反馈为一篇文章的输出,做好学习记录. 这一周(02.25-03.03)我定的目标是<JavaScript 模式>的第七章学习一遍,学习结果的反 ...

随机推荐

  1. 修改weblogic部署的应用名称

    通过weblogic管理后台console进行发布本地项目的时候,它会默认以WEB-INF的上一级目录作为访问路径,如,假如你的项目WEB-INF目录的上一层是WebRoot,那么发布后,访问的路径默 ...

  2. spring mvc如何获取问号后的url参数

    @RequestMapping(method=RequestMethod.GET) public ModelAndView allUsers(@RequestParam int page){ Mode ...

  3. eclipse debug时老提示edit source lookup path解决方案

    用myeclipse debug web应用的时候,总提示edit source lookup path,每次都得手动选择项目,费时费力.在网上终于找到了方法. 搬运:http://www.educi ...

  4. String类的写时拷贝

    #include<iostream>using namespace std; class String;ostream& operator<<(ostream & ...

  5. 倍增 LCA

    以NOIP2013提高组day1 最后一道题为例来学的倍增和lca.其实这套题早就做过了,倍增和lca也学过,只不过当时没有理解清楚,所以今天再次学了一遍,虽然没有时间编程序了,但是先把思路和做法在这 ...

  6. Android listview 制作表格样式+由下往上动画弹出效果实现

    效果是这样的:点击按下弹出表格的按钮,会由下往上弹出右边的列表,按下返回按钮就由上往下退出界面. 布局文件: activity_main.xml <RelativeLayout xmlns:an ...

  7. Autolayout-VFL语言添加约束

    一.VFL语言简洁 VFL(Visual format language)语言是苹果为了简化手写Autolayout代码所创建的专门负责编写约束的代码.为我们简化了许多代码量. 二.使用步骤 使用步骤 ...

  8. 【转】Nginx+Tomcat+Memcached集群Session共享

    cookie是怎样工作的? 例 如,我们创建了一个名字为login的Cookie来包含访问者的信息,创建Cookie时,服务器端的Header如下面所示,这里假设访问者的注册名 是“Michael J ...

  9. sql 解析字符串添加到临时表中 sql存储过程in 参数输入

    sql 解析字符串添加到临时表中  sql存储过程in 参数输入 解决方法 把字符串解析 添加到 临时表中 SELECT * into #临时表   FROM dbo.Func_SplitOneCol ...

  10. GCD常用剖析

    介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统.这建立在任务并行执行的线程池模式的基础上的.它首次 ...