ECMAScript描述的内容

    ECMAScript描述的内容是这门语法的基本工作原理,描述的内容包括语法、操作符、数据类型、内置功能等用于构建复杂方案的基本概念。
一、语法
1.1、ECMAScript中的变量、函数、操作符等的一切都区分大小写。
1.2、标识符:第一个必须是字母、下划线或美元符号。
1.3、注释://      /*  */
1.4、严格模式:为JS定义一种不同的解析与执行模型。要在整个脚本中启用严格模式,在顶部使用“use strict”,
                         若是对某个函数使用该模式,可以在函数体的顶部使用“use strict”。
1.5、语句:以分号结尾,虽然不加分号不会报错,但不推荐。
二、关键字和保留字
      关键字和保留字不能用作标识符。
三、变量
       ECMAScript的变量是松散类型的,即可以用来保存任何类型的数据。换句话说,每个变量仅仅是保存值的占位符而已。
       定义变量使用var操作符,此时,变量为局部变量,若是省略该var操作符,定义的变量则是为全局变量。
3.1、定义变量举例及分析
        
var a;//该变量可以用来保存任何值,由于未初始化,所以默认值为undefined
       var b = "xiaoxu";//并不会将该变量标记为字符串类型,只是给一个变量赋值而已
        b = "hahah";//有效,但不推荐
       var c = "123",
            d = "555",
            e = "999";//有效
<script type="text/javascript">
        function test1() {
            var local = "本地变量";
        }
        function test2() {
            global = "全局变量";
        }
        test2();
        alert(global);//输出“全局变量”
        test1();
        alert(local);//报错       
    </script>


四、数据类型
       ECMAScript中有五种简单数据类型,即基本数据类型(Undefined/Null/Boolean/Number/String),以及复杂数据类型 object,其本质上是由一组无序的名值对组成。
Object类型
      ECMAScript中的对象是一组数据和功能的集合。对象可以通过执行new操作符后跟要创建的对象类型的名称来创建。而创建Object类型的实例并为其添加属性和方法,就可以创建自定义对象。Object类型是所有它的实例的基础,即Object类型所具有的任何属性和方法也同样存在与更具体的对象中。
<script type="text/javascript">
        var o = new Object('hjhj');
        alert(o.valueOf());//hjhj
        o.name = 'xuhsuai';
        alert(o.name);//xushuai
        alert(o.constructor);//function String() { [native code] }
    </script>

4.1、typeof操作符
   作用:用来检测给定变量的数据类型。
    由于typeof是操作符并不是函数,因此其后面也不是必须跟圆括号,可以直接加变量或是数字字面量。
    
<script type="text/javascript">
        alert(typeof 95);//number
        alert(typeof ('xuhsuai'));//string        
    </script>

4.2、ifFinite()函数

    该函数的作用是用于确定一个数值是不是有穷的,换句话说,被检测的数值是不是介于最小和最大的数值之间,如果介于,则返回true。尽管在计算中很少出现某些值超出表示范围的情况,但在执行极小或极大数值的计算时,检测监控这些值是有必要的。

4.3 NaN

    NaN,即非数值,not a number,是一个特殊的数值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况,这样就不会抛出错误了。值得注意的是,任何涉及NaN的操作都会返回NaN,且NaN与任何值都不想等,包括其本身。

五、流程控制语句

5.1、if语句
5.2、do-while语句
5.3、while语句
5.4、for语句
5.5、for-in语句
        是一种精准的迭代语句,可以用来枚举对象的属性,例如window等
        
<script type="text/javascript">
        var o = new Object(3);
        o.name = 'xushuai';
        o.sex = '男';
        o.age = 23;
        for (var propName in o) {
            document.write(propName + ' ');//name sex age
        }
    </script>

5.6、label语句
       可以在代码中添加标签,以便将来使用。
5.7、break语句
5.8、continue语句
5.9、with语句
       该语句的作用是将代码的作用域设置到一个特定的对象中。
       定义with语句的目的主要是为了简化多次编写同一个对象的工作。
       with语句的语法:
               with(expression) statement;
       
<script type="text/javascript">
        var qs = location.search.substring(1);
        var hostname = location.hostname;
        var url = location.href;
        document.write(qs + ' ' + hostname + ' ' + url);
        //定义with语句的目的主要是简化多次编写同一个对象的工作
        with (location) {
            var qs1 = search.substring(1);
            var hostname1 = hostname;
            var url1 = href;
        }
        document.write(qs1 + ' ' + hostname1 + ' ' + url1);// localhost http://localhost:19153/test.html
    </script>

5.10、switch语句
六、函数
6.1、函数使用function关键字
6.2、ECMAScript函数的参数是参数数组,因此,无论你在定义时定义了了多少个参数,实际上和定义一个是一样的,此时,在传参时依然可以传递任意个。
        实际上,在函数内部可以使用参数对象arguments来访问参数数组。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值