前端JavaScript之ECMAScript

一、变量的声明

1.1 变量是弱类型,和python一样,

var name="skiler", age=20, job="lecturer";

1.2 声明变量不用var,声明的是全局变量

a = 1243;

1.3 变量命名规则,首字符只能是字母,下划线,$美元符 三选一,且区分大小写,x与X是两个变量

二、语法规范

1、每行结束可以不加分号,没有分号以换行符作为每行的结束

a=1;b=2;
a=1 b=2;------错误

a=1
b=2

//推荐
a=1;
b=2;

2、注释 多行注释/*   */  单行注释 //

a=1;b=2;
a=1 b=2; //错误
/* 
这个部分都是注释
a=1
b=2
注释结束  */
a=1;
b=2;

3、使用{}来封装代码块

{
//下面不推荐,没有层级关系
 a=1;
 b=2;

//推荐加tab,层级关系更明显
    a=1;
    b=2;
}

三、数据类型

1、数字类型

  •  不区分整型数值和浮点型数值
  • 所有数字都采用64位浮点格式存储
    var a = 123;
    var b = 2.4;
    var c= -2.6

2、字符串类型

  • 字符串常量首尾由单引号或双引号括起
    str1 = 'abc';
    str2 = 'asd2e' 
  • 字符串中部分特殊字符必须加上右划线\
    str1 = 'ad\n \' \" \\ sdfg'

3、布尔型(Boolean)

  • Boolean类型仅有两个值:true和false,也代表1和0,

  • 实际运算中true=1,false=0Boolean值主要用于JavaScript的控制语句

4、对象类型

  4.1 对象的概念和分类

    • 对象分为本地对象(就是JavaScript对象)和宿主对象(BOM和DOM对象,浏览器和文档对象)
    • object对象:ECMAScript 中的所有对象都由这个对象继承而来;Object 对象中的所有属性和方法都会出现在其他对象中
    • 11种内置对象:Array ,String , Date, Math, Boolean, Number  Function, Global, Error, RegExp , Object
      <script language="javascript">
      var aa=Number.MAX_VALUE; 
      //利用数字对象获取可表示最大数
      var bb=new String("hello JavaScript"); 
      //创建字符串对象
      var cc=new Date();
      //创建日期对象
      var dd=new Array("星期一","星期二","星期三","星期四"); 
      //数组对象
      </script>

  4.2 string对象

  4.3 Array对象

  4.4 Date对象

  4.4 RegExp对象

  4.5 Math对象

  4.6 Function对象

5、特殊的类型Null和Undefined

  • Undefined 类型

 Undefined 类型只有一个值,即 undefined。当声明的变量未初始化时,该变量的默认值是 undefined。当函数无明确返回值时,返回的也是值 "undefined";

  • Null 类型

另一种只有一个值的类型是 Null,它只有一个专用值 null,即它的字面量。值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的。

 

尽管这两个值相等,但它们的含义不同。undefined 是声明了变量但未对其初始化时赋予该变量的值,null 则用于表示尚未存在的对象(在讨论 typeof 运算符时,简单地介绍过这一点)。如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。

6、数据类型转换

  • 自动转换

    数字 + 字符串:数字转换为字符串
    
    数字 + 布尔值:true转换为1,false转换为0
    
    字符串 + 布尔值:布尔值转换为字符串true或false
  • 强制类型转换
    函数parseInt:   强制转换成整数   例如parseInt("6.12")=6  ; parseInt(“12a")=12 ; parseInt(“a12")=NaN  ;parseInt(“1a2")=1
    
    函数parseFloat: 强制转换成浮点数  parseFloat("6.12")=6.12
    
    函数eval:       将字符串强制转换为表达式并返回结果 eval("1+1")=2 ; eval("1<2")=true
  • 数据类型查询函数(typeof)
    例如typeof("test"+3)      "string"
    例如typeof(null)          "object "
    例如typeof(true+1)        "number"
    例如typeof(true-false)    "number"

     

 

posted @ 2017-04-12 11:58  skiler  阅读(135)  评论(0)    收藏  举报