《JavaScript 高级程序设计》读书笔记三 基本概念
一 语法
区分大小写,驼峰式书写方式;
严格模式:“use strict”;
二 数据类型
a. 基本数据类型:
undefined 声明变量未初始化
null 空指针,可以释放内存
Boolean
| Boolean | true | false |
| String | 非空字符串 | 空字符串 |
| Number | 非零数值 | 0和NaN |
| Object | 任何对象 | Null |
| Undefined | / | undefined |
Number
Number(),parseInt( ,基数),parseFloat();
NaN 任何数值除以0,非数值;
String
toString() 不可用转换null、undefined;
String() 可以转换null、undefined;
b.复杂数据类型:
object
三 操作符
a.一元操作符:
++a,--a,a++,a--;
+a 等同于Number(a);
-a 等同于-Number(a);
b.位操作符:
负数以二进制存储,采用二进制补码;
1、求绝对值二进制码;
2、反码;
3、反码加1;
按位非(~) 反码,等同于操作数的负值减1;
按位与(&) 同为1才为1,反之为0;
按位或(|) 1个1就为1,反之为0;
按位异或(^) 同为1或0为0,反之为1;
左移(<<) 左移不影响符号位;
有符号右移(>>) 产生的空位由符号位填充;
无符号右移(>>>) 产生空位由0填充;
c.布尔操作符:
逻辑非(!) !! = Boolean();
逻辑与(&&)同为true才为true,反之为false ---短路操作符;
逻辑或(||) 同为false才为false,反之为true ---短路操作符;
d.乘性操作符:
乘法 *;
除法 /;
求模 %(取余);
e.加性操作符:
+ 优先字符串,除非都是数值;
- 优先是Number;
f.关系操作符:
< > <= >=
g.相等操作符:
== != 强制转换比较;
=== !== 仅比较不转换;
h.条件操作符:
var max = (num1>num2)?num1:num2;
i.赋值操作符:
*= /= %= += -+ <<= >>= >>>=
j.逗号操作符:
用于声明多个变量;
四 语句
a.if 语句
b.do-while 先执行,再判断;
c.while 先判断,再执行;
d.for
e.for-in 枚举对象的属性;
f.label 循环break和continue标签;
g.
break 跳出循环;
continue 跳出本次循环;
h.with 将代码作用域设置到一个特定的对象中
i.switch
五 函数
a.参数 通过arguments来访问;
b.不能重载;
《JavaScript 高级程序设计》读书笔记三 基本概念的更多相关文章
- 《javascript高级程序设计》笔记三
第三章 基本概念 任何语言的核心必然会描述这门语言最基本的工作原理.这部分内容对我们来说,读起来很乏味,甚至会产生困意,但这部分内容却是重要的!我有幸拜读<JavaScript高级程序设计> ...
- javascript高级程序设计读书笔记-事件(一)
读书笔记,写的很乱 事件处理程序 事件处理程序分为三种: 1.html事件2. DOM0级,3,DOM2级别 没有DOM1 同样的事件 DOM0会顶掉html事件 因为他们都是属性 而 ...
- Javascript高级程序设计读书笔记(第三章)
第3章 基本概念 3.4 数据类型 5种简单数据类型:undefined.boolean.number.null.string. typeof操作符,能返回下列某个字符串:“undefined”.“b ...
- 《JavaScript高级程序设计》笔记:基本概念(三)
数据类型 ECMAScript中有5种简单数据类型(也称为基本数据类型):undefined,null,boolean,number和string. typeof typeof null会返回“obj ...
- javascript高级程序设计读书笔记
第2章 在html中使用javascript 一般都会把js引用文件放在</body>前面,而不是放在<head>里, 目的是最后读取js文件以提高网页载入速度. 引用js文 ...
- JavaScript高级程序设计 读书笔记
第一章 JavaScript 简介 第二章 Html中使用JavaScript 第三章 基本概念 第四章 变量,作用域,内存 第五章 引用类型 第六章 面向对象 第七章 函数表达式 第八章 BOM 第 ...
- JavaScript高级程序设计-读书笔记(6)
第20章 JSON JSON是一个轻量级的数据格式,可以简化表示复杂数据结构的工作量 JSON的语法可以表示一下三种类型的值 l 简单值:使用与JavaScript相同的语法,可以在JS ...
- JavaScript高级程序设计-读书笔记(1)
第1章 JavaScript简介 JavaScript是一种专为与网页交互而设计的脚本语言,由下列三个不同的部分组成: l ECMAScript:提供核心语言功能: l 文 ...
- javascript高级程序设计 读书笔记1
第二章 在HTML中使用JS 加载JS有三种:行内,head头部和外部链接JS 最好使用外部链接<script src="example.js" ></sc ...
- Javascript高级程序设计读书笔记(第六章)
第6章 面向对象的程序设计 6.2 创建对象 创建某个类的实例,必须使用new操作符调用构造函数会经历以下四个步骤: 创建一个新对象: 将构造函数的作用域赋给新对象: 执行构造函数中的代码: 返回新 ...
随机推荐
- Babel 6 概述
babel-core 只转换语法(如箭头函数) babel-polyfill 由core-js和regenerator runtime组成. 1 core-js用来支持新的全局变量(例如 Promis ...
- appium三种等待时间
1.强制等待(固定等待) 2.隐式等待 是appium中webdriver中自带的休眠方法,设置的是全局等待时间(在全局等待时间内之间的响应操作都会立即结束等待,然后进行操作) 3.显式等待
- VC++安装及使用
1.在浏览器上下载后不能安装 2.黄振古QQ发原文件,依然不能安装 3.考虑后,想通过360压缩安装 4.浏览器上下载的360压缩大多有病毒,无奈下,删掉鲁大师,下载360安全卫士,通过360下载36 ...
- java 将指定文件夹递归的进行zip打包压缩
package tmp.MavenTest; import java.io.BufferedInputStream; import java.io.File; import java.io.FileI ...
- 十一、eclipse如何创建一个maven工程project
1. 2. 3. 4. 这是刚创建的工程,因为缺少WEB-INF/web.xml,所以项目会报错 5. 6. 再编写一个web.xml文件,项目就正常了,没有报错:后期需要自己添加对应的pom.xml ...
- Git命令参考手册
git init # 初始化本地git仓库(创建新仓库) git config --global user.name "xxx" # 配置用户名 git config --glob ...
- AX2009 批处理作业中使用多线程---独立任务模式
每个工单独立一个任务. Class /* 独立任务模式 */ class DemoBatchIndividualTasks extends RunBaseBatch { str 20 SalesOrd ...
- 用turtle库实现汉诺塔问题~~~~~
汉诺塔问题 问题描述和背景: 汉诺塔是学习"递归"的经典入门案例,该案例来源于真实故事. ...
- 【转】TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端)、UDP客户端
[转]TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端).UDP客户端 目录 说明 TCP/UDP通信主要结构 管理多个Socket的解决方案 框架中TCP部分的使用 框架中UDP ...
- union: redis config
# how to save to disk # warning: how to disable, just comment this config save $second $changes