语法

  1. 严格模式 启用严格模式,在脚本顶部或函数内部上方添加"use strict";语句.

数据类型

  1. typeof

    typeof返回undifined,boolean,number,string,object,function六种字符串,typeof null会返回"object".

  2. 数据类型包括六种:undefined,null,boolean,number,string,object
  3. undefined
  4. null

    尽管null与undefined比较相等,但用途不同.一个用来保存对象的变量还没有被赋值,应当让变量保存为null.

  5. boolean
    数据类型 转换为true的值 转换为false的值
    Boolean true false
    String 任何非空字符串 ""(空字符串)
    Number 任何非零数字值(包括无穷大) 0和NaN
    Object 任何对象 null
    Undefined 无任何情况 Undefined
  6. number

    八进制表示:数字前加0,八进制在严格模式下是无效的.

    十六进制表示:数字前加0x.

    Infinity和-Infinity表示正负无穷大.

    NaN(非数值)与任何数都不相等.

  7. String
    \n 换行
    \t 制表
    \b 空格
    \r 回车
    \f 进纸
    \\ 斜杠
    \' 单引号
    \" 双引号
    \xnn 以十六进制nn表示的一个字符(其中n为0~F).例如\x41表示A
    \unnnn 以十六进制nnnn表示的一个Unicode字符(其中n为0~F).例如\u03a3表示希腊字符Σ

    toString()方法,可以传入一个参数的基数,如二进制,num.toString(2);

    若不知要转换的值是不是null或undefined,可使用String()函数,如果值不是null或undefined则调用toString()方法,null返回"null",undefined返回"undefined";

    把某个值转换为字符串,可使用 +"" 的方法;

  8. Object
    Object实例的通用属性方法
    Constructor 保存着用于创建当前对象的函数.如Object()
    hasOwnProperty(propertyName) 用于检查给定的属性在当前对象实例(而不是在实例的原型中)中是否存在,propertyName必须以字符串的形式指定.如o.hasOwnProperty("name")
    isPropertyOf(Object) 用于检查传入对象是否是另一个对象的原型
    propertyIsEnumerable(propertyName) 用于检查是否能够使用for-in语句来枚举,propertyName必须以字符串的形式指定.
    toLocalString() 返回该对象的字符串对象
    toString() 返回该对象的字符串对象
    valueOf() 返回该对象的字符串、数值或布尔值表示,通常与toString()值相同

操作符

  1. 对非数值应用一元加操作符时,该操作对象会像Number()转型函数一样对这个值进行转换.
  2. 按位非的本质:操作数的负值减1
  3. 逻辑与(&&)操作符:

    如果第一个是对象,则返回第二个操作数

    如果第二个是对象,则只有在第一个操作数为true的情况下返回该对象

    两个操作数都是对象,则返回第二个操作数

    有一个操作数是null返回null

    有一个操作数是NaN返回NaN

    有一个操作数是undefined返回undefined

  4. 逻辑或(||)操作符

    如果第一个操作数是对象,则返回第一个操作数

    如果第一个操作数的求值结果为false,则返回第二个操作数

    如果两个操作数都是对象,则返回第一个操作数

    如果两个操作数都是null,则返回null

    如果两个操作数都是NaN,则返回NaN

    如果两个操作数都是undefined,则返回undefined

    利用逻辑或的这一行为来避免为变量赋值null或undefined值,如: var myObject = prrfferredObject || backupObject

代码和笔记git地址:git@code.csdn.net:mid__summer/pjwd.git

精读《javascript高级程序设计》笔记一——基本概念的更多相关文章

  1. javascript高级编程笔记01(基本概念)

    1.在html中使用JavaScript 1.  <script> 元素 <script>定义了下列6个属性: async:可选,异步下载外部脚本文件. charset:可选, ...

  2. javascript高级编程笔记02(基本概念)

    ParseInt()函数: 由于Number函数在转换字符串时比较复杂而且不合理,我们常常转换字符串都用parseInt函数, Parseint函数规则: 忽略字符串前面的空格,直到找到第一个非空格字 ...

  3. JavaScript高级程序设计笔记之面向对象

    说起面向对象,大部分程序员首先会想到 类 .通过类可以创建许多具有共同属性以及方法的实例或者说对象.但是JavaScript并没有类的概念,而且在JavaScript中几乎一切皆对象,问题来了,Jav ...

  4. javascript高级程序设计--笔记01

    概述 JavaScript的实现包含三个部分: 1  核心(ECMAScript)   提供核心语言功能 2  文档对象模型(DOM)  一套提供了访问以及操作网页内容的API 3  浏览器对象模型( ...

  5. JavaScript高级程序设计笔记(一)

    ---恢复内容开始--- 前三章为基础知识,为了方便以后查看,所以比较啰嗦.这里对函数的基本操作没有记录. 1.JavaScript的实现 虽然 JavaScript 和 ECMAScript 通常都 ...

  6. JavaScript高级程序设计笔记 事件冒泡和事件捕获

    1.事件冒泡 要理解事件冒泡,就得先知道事件流.事件流描述的是从页面接收事件的顺序,比如如下的代码: <body> <div> click me! </div> & ...

  7. javascript事件小结(事件处理程序方式)--javascript高级程序设计笔记

    1.事件流:描述的是从页面中接收事件的顺序. 2.事件冒泡:IE的事件流叫做事件冒泡,即事件开始从具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到不具体的节点(文档). 3.事件捕获 ...

  8. Javascript高级程序设计笔记(很重要尤其是对象的设计模式与继承)

    var obj = {'a':'a'}; var fun = function (){} console.log(typeof obj);//object console.log(typeof fun ...

  9. <javascript高级程序设计>笔记

    1.要讲一个值转换成其对应的Boolean类型 ,可以调用转型函数Boolean(). var message=“hello world!”; var messageAsBoolean=Boolean ...

  10. javascript高级编程笔记04(基本概念)

    Function类型 Es5中规范了另一个函数对象的属性:caller,这个属性中保存着调用当前函数的函数的引用,如果是在全局作用域中调用当前函数,这它的值为null function outer() ...

随机推荐

  1. Web.config配置和节点介绍

    Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中 ...

  2. Hexo 官方主题 landscape-plus 优化

    博主喜欢简洁大方的Hexo主题,看了不下100个主题之后,最终选择了 landscape-plus 主题(针对中国大陆地区,对Hexo官方主题landscape进行优化后的版本).更多Hexo主题资源 ...

  3. QT-Creator C/C++ 打地鼠小游戏

    废话少说先上图: 这个游戏纯属土鳖思路,没有用到什么游戏引擎. 1.使用按钮或QLabel铺满窗口. 2.通过简单算法随机动态的设置按钮矩阵中某个按钮的背景图像. 3.同步2过程反复设置多个按钮背景实 ...

  4. 第三方浏览器内核嵌入一、Crosswalk

    本篇分为三部分: 介绍Crosswalk背景 介绍Crosswalk集成步骤 为了减小体积,仅集成兼容ARM的Crosswalk(针对X86同理) PART_A Crosswalk背景介绍 Web技术 ...

  5. IIS ,未能加载文件或程序集“System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。

    1.解决办法:安装MSChart.exe程序 图表控件,下载附件,以管理员身份运行安装.

  6. (转)C# WinForm中 获得当前鼠标所在控件 或 将窗体中鼠标所在控件名显示在窗体标题上

    原文地址:http://www.cnblogs.com/08shiyan/archive/2011/04/14/2015758.html /********************** * 课题:将窗 ...

  7. BZOJ 3307: 雨天的尾巴( LCA + 线段树合并 )

    路径(x, y) +z : u处+z, v处+z, lca(u,v)处-z, fa(lca)处-z, 然后dfs一遍, 用线段树合并. O(M log M + M log N). 复杂度看起来不高, ...

  8. php简单对象与数组的转换

    function arrayToObject($e){     if( gettype($e)!='array' ) return;     foreach($e as $k=>$v){     ...

  9. map循环

    Map<String,  String> maps = new HashMap<String, String>(); maps.put("_id", &qu ...

  10. jQuery 随滚动条滚动效果 (适用于内容页长文章)

    直接入题! 当内容页比较长的时候,网站右侧一直是空白,不如放点有用的东西给用户看,最好不要放广告,因为那样很邪恶,你懂的. 好吧,昨天写了这个东西,jQuery滚动随动区块,代码如下: //侧栏随动 ...