1 《JavaScript高级程序设计》学习笔记
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1 《JavaScript高级程序设计》学习笔记相关的知识,希望对你有一定的参考价值。
欢迎关注本人的微信公众号“前端小填填”,专注前端技术的基础和项目开发的学习。
首先,我将从《javascript高级程序设计》这本JavaScript学习者必看的经典教程开始,JavaScript的很多语法规则及习惯用法和Java极其相似,因此对于有Java基础的学习者来说,JS是很容易上手的。该系列的每次更新将对应原书的一章内容,本次更新对应原书的第三章,主要是一些基本概念,内容很简单, 知识点也较少。
3、严格模式:ECMAScript 5 引入了严格模式的概念, 是为JS定义的一种不同的解析与执行模型。严格模式在后续的学习中会被经常提及。要在整个脚本中启用严格模式,只需要在顶部添加如下代码即可,也可以在函数内部的第一行加上如下代码表示指定函数使用严格模式。
"use strict";
-
Object类型:即对象,就是一组数据和功能的集合,可以通过new操作符来创建。和Java中的Object类一样,Object类型是所有对象类型的父类,即Object类型所具有的任何属性和方法也同样存在于更具体的对象中。
-
Undefined类型:只有一个值,即undefined,使用var声明变量,但是未对初始化的,这个变量就是Undefined类型的。注意:var i;与var i = undefined;这两句是等价的。
-
Null类型:只有一个值:null。null表示一个空对象的指针。
-
String类型:字符串。
-
Boolean类型:只有两个字面量true和false。但是js中所有的变量都可以使用Boolean()函数将其他数据类型转换成一个Boolean类型的值。
在转换过程中,Boolean类型的false、String类型的空串、Number类型的0和NaN、Undefined类型的undifined将转化为false,其他情况将转化为true。
-
Number类型:整数和浮点数。js中所有的变量都可以使用Number()函数将其他数据类型转换成一个Number类型的值。
Number()函数的转换规则:true--1,false--0,null--0,undefined--NaN,空字符串--0,其他字符串如果能转换为数字则返回对应的数字(可以识别十六进制),如果不能则返回NaN。NaN:Not a Number。这个数值用于本来要返回一个数值,但是却未能放回一个数值的情况,以防止报错。例如:1/0 返回的就是NaN。NaN的特点:1、任何涉及NaN的操作都会返回NaN。2、NaN对任何值都不相等,包括自己NaN本身。针对NaN特性,JS内置了isNaN()函数,来确定数值是不是NaN类型。
Infinity:正无穷
-Infinity:负无穷(就是在Infinity前加一个负号)
-
"undefined" 如果这个值未定义或者未初始化
-
"boolean" 如果这个值是布尔值
-
"string" 如果这个值是字符串
-
"number" 如果这个值是数值
-
"object" 如果这个值是对象或null
-
"function" 如果这个值是函数
具体用法:typeof 95; 或者 typeof(95); 会返回"number"。
-
一元操作符:自增(++)、自减(--),可应用于整数和浮点数,对于其他类型,先转化为Number类型再进行相关操作,返回对应的数值或NaN、undefined。注意自增、自减操作符在变量的前后不同对赋值结果是有影响的。
-
位操作符:位与(&)、位或(|)、按位非(~)、位异或(^)、左移(<<)、有符号右移(>>)、无符号右移(>>>)(高位以0填充)。
-
逻辑运算符:非(!)、与(&&)、或(||)。
-
关系运算符:大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于(==)、不等于(!=)、全等(===)、不全等(!==)。若两个操作数均为字符串,则比较两个字符串对应的字符编码,一般是先转化为数值型,然后进行比较。
表达式 值 表达式 值 null == undefined true true == 1 true null === undefined false true == 2 false 5 == NaN false undefined == 0 false NaN == NaN false null == 0 false "NaN" != NaN true "5" == 5 true "NaN" == NaN false false == 0 true
-
条件运算符:? : 。
-
赋值运算符:=、+=、-=、*=、/=、%=、<<=、>>=、>>>=。
-
逗号运算符:可用于声明多个变量,也可用于赋值。用于赋值时,逗号运算符总返回表达式中的最后一项。
8、JS中的各种语句和其他各种编程语言中的都是一样的。主要是顺序、选择和循环三类。
-
顺序语句:with(expression) statement 将代码的作用于设置到一个特定的对象中,相当于一种简写形式。例如我们需要用到对象a的两个方法getName()和getAge()需要写代码为
var name = a.getName();
var age = a.getAge();
此时用with语句可以写成
with(a){
var name = getName();
var age = getAge();
}
-
选择语句:if、if...else...、switch...case...。
-
循环语句:do...while、while、for、for...in。
for...in:是一种精准的迭代语句,可以用来枚举对象的属性。
for(var propName in window){
document.write(propName);
}
-
其他语句:break、continue、label。
label:标签语句,可用于被break和continue引用。
以上是关于1 《JavaScript高级程序设计》学习笔记的主要内容,如果未能解决你的问题,请参考以下文章