《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操作符调用构造函数会经历以下四个步骤: 创建一个新对象: 将构造函数的作用域赋给新对象: 执行构造函数中的代码: 返回新 ...
随机推荐
- 大数据学习笔记4 - Hadoop的优化与发展(Hadoop 2.0)
前面介绍了Hadoop核心组件HDFS和MapReduce,Hadoop发展之初在架构设计和应用性能方面仍然存在不足,Hadoop的优化与发展一方面体现在两个核心组件的架构设计改进,一方面体现在Had ...
- 桥接模式和nat模式的区别
桥接模式:VMware虚拟的系统就想局域网中独立的主机一样(有独立的IP)它可以访问网内任何一台机器 Nat模式:可以通过宿主机访问互联网(宿主机联网,虚拟机就能联网)它不能和本局域网中的其他主机进行 ...
- 2018-2019-2 20165315 《网络对抗技术》Exp3 免杀原理与实践
2018-2019-2 20165315 <网络对抗技术>Exp3 免杀原理与实践 一.实验内容 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion ...
- android 6.0+ 动态权限 拒绝不再询问后跳转设置应用详情页面
android 6.0+ 的权限 需要动态申请 这里的权限针对的是 敏感权限: SMS(短信) SEND_SMS RECEIVE_SMS READ_SMS RECEIVE_WAP_PUSH RECEI ...
- git tag 查看标签列表、切换标签
1.查看标签列表 git tag 2.切换标签(需要指定分支 test 为分支.v0.17.7 为标签版本) git checkout -b test v0.17.7
- gulp打包普通项目
第一步:npm init 生成一个page.json第二步建立一个gulpfile.js文件主要是写这个文件 var gulp = require('gulp'), rev = require('gu ...
- 九、mybatis模糊查询2种方式
1. 2. 3.
- c++常用小算法
这篇文章列出了一些简单常用的C++容器算法,C++标准库中事实上提供了很多的算法并且有详细的介绍.如果需要详细的了解这些算法可以 参考C++在线参考手册 algrithm . 1 排序 在 #incl ...
- Springmvc中@RequestMapping 属性用法归纳
简介: @RequestMapping RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径. RequestM ...
- JS学习记录------JS基本指令
对未来的恐慌,和想成为一名自由开发的梦想.让我觉得应该点亮一个新的技能:WEB前端开发. 重新学习JS以及jQuery,让我在日常code的过程中可以更得心应手,毕竟,我爱代码. 这篇文章主要记录的内 ...