js笔记二:Javascript的基本类型

1、区分大小写

    javascript中的一切变量,函数名和操作符—都区分大小写,也就是说test和Test分别表示两个不容的变量,而函数名不能使用typeof因为他是一个关键字,但typeOf则完全可以是一个有效的函数名

2、变量

         Javascript的变量是松散的,所谓松散就是可以用来保存任何类型的数据,换句话说每个变量仅仅是一个用于保存值的占位符而已。定义变量时要加var如:

         var message;

         像这样未经过初始化的变量会保存一个特殊值----------undefined,有一点要注意如果在函数中使用var定义一个变量,那么这个变量在函数退出后就会被销毁。

3、数据类型

         Javascript中有5中数据类型(也成为基本类型)分别是:undefined、Null、Boolen、Number、String,还有一种复杂的数据类型Object

4、type操作符:alert(typeof 95);

         Typeof操作符会返回下列某个字符串

         Undefiend:表示这个值未定义(使用var声明但未初始化);

         Boolen:表示布尔值

         String:表示是字符串

         Number:表示数字

         Object或null:表示这个值是对象

         Function:表示这个是函数

5、undefined

         Undefined类型只有一个值那就undefined,引入这个值是为了正式区分空对象指针与未经初始化的变量,包含undefiend值的变量与未定义的还是不一样的,如:

         Var menssage;

         Alert(menssage)     //undefiend;

         Alret(age)                  //产生错误

         然而令人困惑的是:对未初始化的变量执行typeof和未声明的变量执行typeof操作返回的都是undefiend;所以建议养成显式初始化变量的习惯,如果能够做到这一点,那么当typeof操作符返回undefined我们就做到被检测的变是没有声明,而不是没有初始化的。

6、Boolen类型

         该类型只有两个字面值,true和false,这两个与数字不是一回事,因此true不一定等于1,false也不一定等于0;需要注意的是true和false是区分大小写的,下面给出了各种数据类型转换成boolen的规则

        

数据类型

转换成true的值

转换成false的值

Boolen

True

false

string

任何非空字符串

‘’(空字符串)

number

任何非0字符串

0和NAN

object

任何对象

Null

undefiend

Undefined

7、数值转换

         有3个函数可以把非数字值转换成数值:Number()、paseInt()、parseFloat();

         Number():可以用于任何数据类型,而两个则专门用于把字符串转换成数值,number()转换规则如下:

         如果是Boolen:true和false分别转换成1,0;

         如果是数字:就直接返回

         如果是null和undefined:返回0

         如果是字符串:    

                   1、如果字符串只包含数字,则直接转成十进制如:”1” =  1 ;“123” = 123  “011”=11                  2、如果字符串包含有效的浮点格式。如1.1,则直接转换成对应的浮点数值(同样也会忽略前面的0)

                   3、如果是十六进制的格式的、则直接转换成十进制的整数值;

                   4、如果字符串是空的则转化成0

         parseInt():处理整数常用的,它会忽略字符串前面的空格,直到找到第一个非空字符,如果第一个字符不是数字符号或者负号,那么就会返回NAN,类似的22.5会被转换成22因为小数点不是有效的数字字符,        parseInt()第二个参数是制定基数,默认是十进制的‘

         parseFloat():也是从第一个字符(位置0)开始解析每个字符串,一直解析到字符结束,如果遇到一个无效的浮点数字字符为止,也就是说字符串中第一个小数是有效的,第二个就无效了,因此他后面的字符串将会被忽略,如:

alert(parseFloat(“22.5”))        //22.5

alert(parseFloat(“22.5.66”))   //22.5

parseFloat只解析十进制的。

8、字符串:

         String类型用于表示零个或多个16位的Unicode字符组成的字符序列,即字符串。

         转换成字符串toString()、默认情况下该方法以十进制返回数值的的字符串表示,而通过传递参数可以输出二进制、八进制、十六进制如:

         Var num = 10;

         Alet(num.toString())         //”10”

         Alert(num.toString(2))     //二进制输出:”1010”

         而null和undefined没有toString方法、可以使用String();

9、操作符:

         布尔操作符一共有三个:非(NOT)、与(AND)、或(OR)

         非(NOT):该操作符用一个!表示,首先操作符会将它操作的数转换成一个布尔值,然后再对其求反。

         AND:该操作符用&&表示,有两个操作数,如果第一个操作符为false则第二个无论是什么值结果都不在是true了。

         OR(或):该操作符用||表示,如果第一个操作符为true则不会再对第二个操作符求值了。

10、不全等(==)和全等(===)

         差别:存在类型转换问题  

11、逗号操作符

         使用逗号操作符可以在一条语句中执行多个操作,如

         Var num = 1,num2 = 2 , num3 = 3

         除此之外还是用于赋值,在赋值时逗号操作符总会返回表达式中的最后一项,如:

         Var num = (5,1,2,4,8,0)   //num值为0

12、do-while

                   语法:

                            Var I = 0;

                            Do{

                                     I += ;

}while(I < 100);

                   在对条件表达式求值之前、循环体内的代码至少执行了一次

13、for语句

         For语句也是一种前测试循环语句,但它具有在执行前初始化变量和定义循环后要执行的代码能力。

         For(;;){

         //无限循环

}

其实只要给出控制表达式实际上就是吧for循环转换成了wile循环如:

Var count = 10;

Var I= 0;

For(; I < count;){

         Alert(i);

         I++;

}

14、break和continue

         Break: 立即停止循环

         Continue: 语句在循环内会立即退出循环,跳出这次循环,继而执行循环后面的语句以及下次循环;

15、arguments

         在函数体内可以通过该函数来访问参数数组、Arguments对象只是与数组类型,但它并不是Array的实例,因此可以用arguments[0]来访问数组的第一个元素,使用length可以来确定传递进来多少参数

函数如果没有指定返回值、函数返回的是一个undefined值。

原文地址:https://www.cnblogs.com/toxiaonan/p/2432541.html