面向对象的JavaScript (一) ----- Javascript偏僻的基础知识
来源:互联网 发布:做淘宝需要团队吗 编辑:程序博客网 时间:2024/06/05 04:44
本系列文章主要讲解javascript的面向对象机制,以及如何写出面向对象的javascript代码。作为本系列的第一篇文章,本文主要介绍javascript的比较偏僻的基础知识,对于一些基本的语法,本文不会做介绍。读者如果有什么不理解的地方,可以参考其他javascript的书籍。让我们开始进入javascript的世界。
1.数据类型
javascript有如下5中基础数据类型(不包括object)
Number
String
Boolean
Undefined
Null
首先介绍undefined和null的区别。
undefined表示,当访问不存在的变量的时候,会返回undefined,或者申明了变量但是没有赋值,javascript就会自动给这个变量附上undefined这个初值。
null表示没有值,空值。与undefined的区别是,如果值是null,这个变量仍旧是定义过得,之后我会举个例子详细介绍。
在讲解这些数据类型之前,还需要介绍一个操作符,因为这个操作符很有用,它就是typeof
typeof:返回一个表示类型的字符串,比如“number”,“boolean”“undefined”等。有了这个,你可以自己在写一些javascript代码试试,观察一些各个变量各种情况下的类型以加深理解.
现在开始详细介绍各个类型:
1.1 number
number的值可以用科学计数法表示的,比如:
1e+1 表示 10 2e+3 表示2000 2e-3 表示 0.002
infinity也是number的值,大概是1.7e+308左右,如果大于这个数,值仍旧是infinity,任何数除以0也会得到infinity,最小的数是-infinity
另外,number还有一个值,是NaN,表示"不是一个数字".比如你用10乘以字符串"f"的时候,得到的结果是NaN.注意,NaN是会传递的,如果一个算式中的一个单元结果为NaN,则整个算式的结果为NaN.
1.2 string
当string进行数字运算的时候,会自动的转化为数字,比如:
var s="1"; s = s*3;
此时s的类型就是数字.
所以,比较偷懒的将字符串装化为数字的方法就是让字符串*1.
1.3 比较
关于boolean没什么好讲的,所以来谈谈比较.除了= 和 = =外,javascript还提供= = =.表示全等,作用是,不仅比较值相等,还要比较类型相等.同理还有!==
1.4 关于undefined和null
终于又讲到它们了.举个例子,
var somevar=null
这时,somevar的值是null,类型是object.
如果是这样:
var someva.
则得到的结果是undefined
另外
1+undefined是null
1+null是1
1*null是0
!!undefined是false
!!null是false.
1.5 数组
最后讲讲数组,数组的类型是object,
主要提一下数组的删除:
var a=[1,2,3]
delete a[1];
注意,此时a的值是
[1,undefined,3]
本文大致结束了,感觉只是提了一些概念,其实主要的javascript语法大家都懂,所以感觉也没什么必要在反复讲解.在后面一篇文章中,我会讲解在属下面向对象的javascript时的一些基础知识.为之后介绍继承做好准备.
1.数据类型
javascript有如下5中基础数据类型(不包括object)
Number
String
Boolean
Undefined
Null
首先介绍undefined和null的区别。
undefined表示,当访问不存在的变量的时候,会返回undefined,或者申明了变量但是没有赋值,javascript就会自动给这个变量附上undefined这个初值。
null表示没有值,空值。与undefined的区别是,如果值是null,这个变量仍旧是定义过得,之后我会举个例子详细介绍。
在讲解这些数据类型之前,还需要介绍一个操作符,因为这个操作符很有用,它就是typeof
typeof:返回一个表示类型的字符串,比如“number”,“boolean”“undefined”等。有了这个,你可以自己在写一些javascript代码试试,观察一些各个变量各种情况下的类型以加深理解.
现在开始详细介绍各个类型:
1.1 number
number的值可以用科学计数法表示的,比如:
1e+1 表示 10 2e+3 表示2000 2e-3 表示 0.002
infinity也是number的值,大概是1.7e+308左右,如果大于这个数,值仍旧是infinity,任何数除以0也会得到infinity,最小的数是-infinity
另外,number还有一个值,是NaN,表示"不是一个数字".比如你用10乘以字符串"f"的时候,得到的结果是NaN.注意,NaN是会传递的,如果一个算式中的一个单元结果为NaN,则整个算式的结果为NaN.
1.2 string
当string进行数字运算的时候,会自动的转化为数字,比如:
var s="1"; s = s*3;
此时s的类型就是数字.
所以,比较偷懒的将字符串装化为数字的方法就是让字符串*1.
1.3 比较
关于boolean没什么好讲的,所以来谈谈比较.除了= 和 = =外,javascript还提供= = =.表示全等,作用是,不仅比较值相等,还要比较类型相等.同理还有!==
1.4 关于undefined和null
终于又讲到它们了.举个例子,
var somevar=null
这时,somevar的值是null,类型是object.
如果是这样:
var someva.
则得到的结果是undefined
另外
1+undefined是null
1+null是1
1*null是0
!!undefined是false
!!null是false.
1.5 数组
最后讲讲数组,数组的类型是object,
主要提一下数组的删除:
var a=[1,2,3]
delete a[1];
注意,此时a的值是
[1,undefined,3]
本文大致结束了,感觉只是提了一些概念,其实主要的javascript语法大家都懂,所以感觉也没什么必要在反复讲解.在后面一篇文章中,我会讲解在属下面向对象的javascript时的一些基础知识.为之后介绍继承做好准备.
- 面向对象的JavaScript (一) ----- Javascript偏僻的基础知识
- javascript复习一 JavaScript的面向对象
- JavaScript基础知识-面向对象的程序设计
- JavaScript对象的基础知识
- 一颗面向对象的javaScript树
- javascript的面向对象开发(一)
- 全面理解Javascript的面向对象(一)
- 全面理解Javascript的面向对象(一)
- 面向对象的javascript
- javascript的面向对象
- JavaScript的面向对象
- 面向对象的JavaScript
- Javascript的面向对象
- 面向对象的JavaScript
- 面向对象的JavaScript
- 面向对象的JavaScript
- 面向对象的Javascript
- 面向对象的JavaScript
- 文档文档被设置了保护密码的处理办法
- Primer: Getting into RDF & Semantic Web using N3学习笔记
- 什么是ESI
- POJ1256
- 安装布署时的错误解决方法
- 面向对象的JavaScript (一) ----- Javascript偏僻的基础知识
- More on Memory Usage(.NET内存利用率)
- 12333333333
- 钱学森堂侄有望获化学奖诺贝尔奖(丹比奴)
- Java Web 流行的的图表生成工具介绍
- System.Collections、System.Collections.Generic、System.Collections.Specialized
- 大型网站架构演变和知识体系(转)
- 虚函数(virtual function),实现多态
- .net中使用hibernate步骤及详解笔记