博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
菜鸟学《Javascript高级程序设计》之学习总结( 一)---基本语法
阅读量:6980 次
发布时间:2019-06-27

本文共 1888 字,大约阅读时间需要 6 分钟。

1.javascript有5种简单数据类型(Undefined,Null,Boolean,Number,String)和1种复杂数据类型(Object)。

1.1 Undefined

在用Var定义变量时,未为变量加以初始化,该变量的值就将会是Undefined。

注意点:对声明未初始化的变量使用typeof操作符会返回Undefined,但是对未声明的变量使用typeof操作符也会返回Undefined。虽然可以对未声明的变量使用typeof操作符,但是使用未声明的变量会产生错误。

1.2 Null

从逻辑上看,Null表示一个空对象指针,这也是为什么对Null使用typeof操作符会返回“Object”的原因。

注意点:ECMA-262规定对Null和undefined进行相等测试永远返回true,即:null==undeinfed返回true。

1.3 Boolean

注意点:Boolean的字面值true和false是区分大小写的。

1.4 Number

(一)ECMAScript能够表示的最小数值保存在Number.MIN_VALUE中,能够表示的最大值保存在Number.Max_VALUE中。小于最小值则转化成-Infinity(负无穷),大于最大值则转行成Infinity(正无穷)。使用isFinite()函数可以判断一个数值是否有穷。

(二)NaN(非数值)

NaN的两大特点:

(1)任何涉及NaN的操作,都会返回NaN。

(2)NaN与任何值都不等,包括NaN本身。

可以使用isNaN()函数来判断一个参数是否“非数值”。

(三)数值转换

可以使用Number(),parseInt(),parseFloat()三个方法来进行数据转换。Number()可以转换所以类型,而parseInt()和parseFloat()则只能转换字符串类型。

parseInt()可以接受两个参数,第一个参数为要转换的字符串,第二个参数为要转换成的进制数。parsetFloat()则只能转换成十进制。

1.5 String

对于数值,布尔值,对象和字符串可以使用toString()方法来转换成字符串,而对于Undefined和Null则可以使用String()方法来进行转换。

1.6 Object

Object的属性和方法:

(1)constructor---用于保存创建当前对象的函数。

(2)hasOwnProperty(propertyName)---用于检查给定的属性在当前对象中是否存在。

(3)isPropertyOf(object)---用于检查传入的对象是否是另一个对象的原型。

(4)propertyIsEnumberable(propertyName)---用于检查给定的属性是否能够使用for-in语法来枚举。

(5)toString()---返回对象的字符串表示。

(6)valueOf()---返回对象的字符串,数值或布尔值表示。

2.操作符

2.1 布尔操作符

(一)逻辑与

逻辑与操作符可以为任何类型的操作符,不仅仅是布尔值。规则:

(1)如果第一个操作数为对象,则返回第二个操作数。

(2)如果第二个操作数为对象,则只有当第一个操作数的求值结果为true的情况下,才会返回第二个操作数。

(3)如果两个操作数都为对象,则返回第二个操作数。

(4)如果有一个操作数为null,则返回null。

(5)如果有一个操作数为NaN,则返回NaN。

(6)如果有一个操作数为Undefined,则返回Undefinied。

(二)逻辑或

与逻辑与操作符相似,操作数也可以不是布尔值。规则:

(1)如果第一个操作数位对象,则返回第一个操作数。

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

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

(4)如果两个操作数都是null,则返回null。

(5)如果两个操作数都是NaN,则返回NaN。

(6)如果两个操作数都是Undifined,则返回Undifined。

2.2 相等操作符

全等,不全等,在不转换操作数的情况下相等。

3.语句

with语句:将代码的作用于设置到一个特定的对象中。

4.函数

函数的参数可以通过argument对象访问到。

注意点:没有传递值的命名参数将自动被赋予Undefined值。

转载于:https://www.cnblogs.com/Johnny-Ding/archive/2013/02/24/2924679.html

你可能感兴趣的文章
黑马基础阶段测试题:通过字符输入流读取info.txt中的所有内容,每次读取一行,将每一行的第一个文字截取出来并打印在控制台上。...
查看>>
优秀博客
查看>>
iOS 开发 OC编程 数组冒泡排序.图书管理
查看>>
VS 2010 快捷键大全
查看>>
决策树算法
查看>>
前端的一些小的效果
查看>>
angular指令ng-class巧用
查看>>
解密FFmpeg播放track mode控制
查看>>
前端基础之JavaScript
查看>>
暂时喘口气,
查看>>
xp命令大全
查看>>
python装饰器+迭代器+生成器
查看>>
Sencha-概念-Layouts(布局)(官网文档翻译8)
查看>>
swift的特点
查看>>
去除ios input部分默认样式
查看>>
【HDOJ】3275 Light
查看>>
Spring中使用Schedule调度
查看>>
老毛桃PE
查看>>
Hadoop生态圈-Flume的组件之自定义拦截器(interceptor)
查看>>
WaveSwipeRefreshLayout
查看>>