zoukankan      html  css  js  c++  java
  • ES5中新增的一些方法

    严格模式(strict mode)

      设立目的:1、消除js语法中一些不合理、不严谨之处,减少一些怪异行为

           2、提高编译器效率,提高运行速度

           3、保证代码运行安全

    进入严格模式标志  ‘use strict’  分为全局和局部

    全局模式:即‘use strict’ 在整个脚本的第一行,整个脚本都以“严格模式”运行   全局有效

    局部模式:将“use strict”放在局部,只在局部范围内生效

    1 function fn() {
    2             "use strict";
    3             a = 100;
    4             alert(a);
    5         }
    6         fn();  //a is not defined

    严格模式对语法和行为的限制

    1、变量必须先声明,再调用,否则直接报错

    1、严格模式下:"use strict"
             a = 100;
            alert(a); 
    //a is not denfined
    //必须先var,先声明,才能调用

    2、函数内形参不允许重名

     //2、函数内形参不允许出现重名的函数
            'use strict';
            function fn(a,b,b){
                console.log(a);
                console.log(b);
                console.log(b);
            }
            fn(1,2,3);
            //正常模式下显示为1,3,3
            //严格模式下则报错

    3、arguments对象不允许被改变

    //3、arguments对象在严格模式下不允许被改变
            'use strict';
            function fn(a,b){
                a = 100;
                console.log(a);//100
                console.log(b);//2
                console.log(arguments);//1,2
            }
            fn(1,2);
            //严格模式下arguments显示为1,2

    4、this不能指向全局对象

    //4、this无法指向全局
            "use strict";
            function fn(){
                console.log(this);
            }
            fn();
            //正常模式下,指向整个window
            //严格模式下,显示this  =>  undefined

    新增数组方法

      indexof()  返回元素在数组中位置,没有返回-1

      forEach(callback(v,k))   遍历数组中每一个元素,无返回值

      map(calllback(v,k))   返回一个新数组,数组中的元素就是经过处理后的数组  

      filter(callback(v,k))   过滤,只有当boolean值为true是才返回

  • 相关阅读:
    IE浏览器下常见的CSS兼容问题
    Android studio 使用问题汇总
    IOS中的属性列表----Property List
    自定义组件-BreadcrumbTreeView 的使用
    IOS开发之数据sqlite使用
    深入分析动态管理Fragment
    IOS开发中多线程的使用
    Java中导入、导出Excel
    IOS数据持久化之归档NSKeyedArchiver
    Bugfree3.0.4 Linux环境安装指南
  • 原文地址:https://www.cnblogs.com/zoutuan/p/11577479.html
Copyright © 2011-2022 走看看