javascript数据类型(一)

一、定义
1、数据类型决定了一个数据的特征,限定了该数据类型必须按照一定的规则进行操作。
2、特定的数据类型会有其想对应的行为模式。
3、javascript中有6中数据类型
  1. Number --数值型
  2. boolean --布尔型
  3. string --字符串型
  4. Null --空
  5. undefined --未定义
  6. Object --对象型
4、值和对象的区别,数据类型的实例被称为“值”,Obj类型的实例被称为“对象”,不过javascript支持值与对象的隐式变换。

二、基本数据类型和引用数据类型
1、javascript变量可以分为基本数据类型变量和引用类型变量。
2、基本数据类型变量直接保存有数值等类型的数据值。
3、引用类型变量则保存有对象的引用

三、基本数据类型
1、字符串类型是javascript的基本数据类型
2、字符串值会被隐式地转换为字符串对象类型。
3、数值类型其内部构造为64位浮点小数。相当于其他语言中的duoble类型。
4、null类型的值只有null一种情况,null属于字面量。
5、undefined类型是指未定义的值的类型。

四、字符串型
1、字符串值可以通过字符串字面量来表示。
2、字符串字面量需要用双引号(" ")或者单引号(' ')
  1. var s="abs";
  2. document.write(s);
  3. /*
  4. 输出:
  5. abs
  6. */
  7. var s='abs';
  8. document.write(s);
  9. /*
  10. 输出:
  11. abs
  12. */
(1)、特殊字符可以通过转义字符串来表示。可以通过转义符之后使用特定字符,来表达一些特殊的含义
  1. \n --换行
  2. \t --水平制表
  3. \b --退格
  4. \r --换行
  5. \f --换页
  6. \v --垂直制表符
  7. \\ --反斜杠
  8. \' --单引号
  9. \" --双引号
  10. \xXX --以十六进制码表示一个字符
  11. \uXXXX --以十六进制码表示一个Unicode字符
(2)、双引号和单引号除了有其各自的转义字符之外,功能上基本没有其他区别。

3、字符串运算
(1)、在=运算符右侧书写字符串值,能够将其赋值给位于等号左侧的变量
  1. var s='abc';
  2. var s2=s;
  3. document.write(s2);
  4. /*
  5. 输出:
  6. abc
  7. */
(2)、字符串类型是不可变类型
(3)、可以通过+运算符来连接字符串值
  1. var s1='012';
  2. var s2='345';
  3. var s3=s1+s2;
  4. document.write(s3);
  5. /*
  6. 输出:
  7. 012345
  8. */
(4)、+=运算符可以在连接字符串的同时进行赋值
  1. var s='012';
  2. var s2=s;
  3. s+='345';
  4. document.write(s2);
  5. /*
  6. 输出:
  7. 012
  8. */
(5)、可以通过typeof运算符来获得知值的数据类型
  1. document.write(typeof 'abc';);
  2. /*
  3. 输出:
  4. string
  5. */
  6. ------------------------------------------
  7. var s='abc'
  8. document.write( typeof s);
  9. /*
  10. 输出:
  11. string
  12. */
  13. var s='abc';
  14. document.write(typeof (s);)
  15. /*
  16. 输出:
  17. string
  18. */
  19. ------------------------------------------
  20. document.write(typeof 'abc';)
  21. /*
  22. 输出:
  23. string
  24. */
  25. ------------------------------------------
  26. document.write(typeof 'abc';)
  27. /*
  28. 输出:
  29. string
  30. */
  31. ------------------------------------------
  32. document.write( typeof(typeof(s)) );
  33. /*
  34. 输出:
  35. string
  36. */
4、字符串型比较
(1)、javascript有两种等值运算符“===”和“==”。
(2)、两种不等值运算符“!==”和"!="。
(3)“===”在比较时不会对数据类型进行转换。
(4)“==”在比较是会对数据类型进行转换。
  1. var s1='012';
  2. var s2='0';
  3. var s3=s1+'12';
  4. s1==s3
  5. >>true
  6. s1!=s3
  7. >>false
  8. s1!==s3
  9. >>false
(5)字符串比较时是基于UnIcode字符的编码表来比较的
  1. var s1='abc';
  2. var s2='def';
  3. s1<s2
  4. >>true
  5. s1<=s2
  6. >>true
  7. s1>s2
  8. >>false
  9. s1>=s2
  10. >>false
5、字符串类(string)
(1)、字符串类的名称为string。
(2)、字符串型和string类之间支持隐式类型转换。
  1. var s='012';
  2. document.write(s.length);
  3. >>3
  4. document.write('012'.length);
  5. >>3
javascript中书写'012'.length的话(属于内建类型的)字符串会先被隐式地转换为字符串对象,然后在读取字符串对象的length属性。

参考书籍资料:

1、javascript编程全解http://www.ituring.com.cn/book/1140

2、javascript 岳英俊http://pan.baidu.com/s/1eQlegKE





posted @ 2015-05-07 22:13  静文  阅读(219)  评论(0编辑  收藏  举报