ecma5标准

ecma5 标准 第五版

ecma6 严格模式 

   function max(){
            m1 = 10;//没有var,变量被当作全局变量来使用,
        }
        function max(){
            "use strict"
            m1 = 10;//严格模式下,没有var,则报错,严格模式只在当前作用域下起作用,不要轻易在全局模式下使用严格模式
        }

indexOf();数组,indexOf(元素,开始的下标);

  forEach();遍历数组 arr.forEach(function(当前遍历到的元素,当前遍历的下标,当前数组){});

    var arr = [10,20,30];
       arr.forEach(function(item,index,arrey){
           alert(item + "," + index + "," + arrey);});//返回10,0,10,20,30,依次循环3次
           arr.forEach(alert);//返回三次10,20,30

 map();arr.map(function(当前遍历到的元素,当前遍历的下标,当前数组),遍历》操作》返回

    arr.map(function(item,index,arrey){              //遍历
      return item + 2;});//操作返回

 reduce();归并, arr.reduce(function(pre,next,index,arrey);  pre上一次遍历元素返回的值,next当前遍历的元素,,如果reduce传入了参数,则pre变成参数,next成为第一个元素

  arr.reduce(function(){
    alert(pre + "," + next);
    return pre + next;
    });//第一次返回10,20,第二次返回30,30

filter();过滤arr.filter(function(当前遍历到的元素,当前遍历的下标,当前数组),遍历》操作》返回

    var arr2 = arr.filter(function(item,index,arrey){              //遍历
       return item > 10;});//操作大于10的元素返回

some();操作返回true,false

      arr.some(function(item,index,arrey){             // 遍历
      return item == 10;});//操作相等10的元素返回true ,false,匹配成功,则不进行后面的判断    

every();和some类似,但是每一项都要符合才返回true

 Math对象;用于执行数学任务,常用,Math.PI 3.14159

round();四舍五入     Math.round(3.4); 返回3

random();

 max();返回较大值

min();返回较小值

abs();返回这个数的绝对值, Math.abs(-10); 返回10

 ceil();向上取整, Math.ceil(3.1); 返回4

 floor();向下取整

pow();几次方, pow(x,y); x的y次方

  sqrt();开平方, Math.sqrt(4); 返回2

勾股定理:

Math.sin();Math.cos();Math.tan();正弦/余弦/正切,参数都是弧度,Math.PI = 180弧度,1弧度 = Math.PI / 180

alert(Math.sin(30 * Math.PI / 180)); 30度的sin值,应该是0.5,计算是0.4999,这是计算机本身的bug,没办法解决,银行的计数是分,没有小数点。

对象:是一种类型,复合数据类型/引用类型,方法名称是地址,通常也称为类,ECMAscript虽然是面向对象的语言,但是却不具备传统语言所支持的类的数据结构

对象存储的数据,称属性,对象存储的函数,称方法

         var person = new object();//创建,也可以省略new,
         var person = {};//和上面相同
         person.name = "dsf";//添加属性
         person["name"] = "fd";//和上面相同
         person.showName = function(){alert(person.name);}//添加方法
         delete person.name;//delete关键字

日期对象

    var d =new Date();//返回一个当前时间,
       var d = new Date("2015/5/22");//可以传入参数,"2011-2-3",2011,03,03,14,23  传入毫秒数,从1970 unix诞生日开始算起,1000,

日期的几个方法

        d.toDateString();
     d.toLocalDateString();

获取一周的某一天,某月都是从0开始的下标,星期天代表0, d.getDay(); 星期天返回0

Date.parse("2015-2-3"); 日期格式化,返回值,1970以来的毫秒数,

d.getTime()/d.setTime(),获取设置自1970年以来的毫秒数,

        function showDate(n){
             var d = new Date();//创建一个对象
             var da =d.getDate(); //获取当前日期
             d.setDate(da + n);//加上一个参数日期
              return d;//返回日期
         }
         alert(showDate(28));    

setInterval(函数,毫秒数);定时器功能,每隔设置毫秒数启动一次函数, setInterval(show,1000); 如果用按钮来控制定时器,多次点击按钮将会重复启动定时器,造成返回值id变化

clearInterval(定时器ID);用var id = 定时器获取返回值

 innerHtml;标签间的所有内容,

     var oDiv = document.getElmentById("div1");
     oDiv.innerHtml = "<h3>我是替换文本</h3>";

秒表的实现

  html body{margin: 0}
        #div1{height: 350px;width: 200px;background-color: #999;margin:100px auto;text-align: center}
        #count{height: 200px;width: 100%;background-color: #888;line-height: 200px;font-size: 40px;}
        #div1 input{display: block;margin: 5px auto;width: 80px;height: 40px;}
        span{background-color: #777;width: 40px;height: 20px;}
    <div id="div1">
        <div id="count">
            <span id="h"></span>
            <span id="m"></span>
            <span id="s"></span>
        </div>
        <input id="start" type="button" value="开始">
        <input id="pause" type="button" value="暂停">
        <input id="stop" type="button" value="停止">
    </div>
//封装函数,启用$符号
      function $(id){
            return document.getElementById(id);
        }
//封装函数,让秒数在小于10的时候,十位数显示0.
        function sz(cou){
            if(cou < 10){
                return "0" + cou;
            }
            return cou;
        }
        window.onload = function(){
            //开始计数
            var count = 0;//设定一个数字,让数字自我增加
            var timer = null;//设置一个调用函数的id,可以清除id,而不重复调用函数
            $("s").innerHTML = "00";//让标签显示秒
            $("m").innerHTML = "00";//让标签显示分
            $("h").innerHTML = "00";//让标签显示小时
            $("start").onclick = function(){//点击按钮的时候开始
                timer = setInterval(function(){//计时器设定调用函数为1秒
                    count++;
                    $("s").innerHTML = sz(count % 60);
                    $("m").innerHTML = sz(parseInt(count / 60) % 60);
                    $("h").innerHTML = sz(parseInt(count / 3600) % 24);
                },1000);
            }
            //暂停
            $("pause").onclick = function(){
                clearInterval(timer);
            }
            //停止,数据清理全部归0
            $("stop").onclick = function(){
                clearInterval(timer);//清除调用函数,
                count = 0;
                $("s").innerHTML = "00";
                $("m").innerHTML = "00";
                $("h").innerHTML = "00";
            }
        }

原文地址:https://www.cnblogs.com/solaris-wwf/p/11622249.html

时间: 2024-11-13 09:40:24

ecma5标准的相关文章

属性类型:数据类型,访问器类型的坑

ECMA5弄了一个新东西, 就是用户可以通过Object.defineProperty配置属性的可写,可配置,可枚举, 让我们开发者可以定义一些属性,这些属性有点像native的赶脚 比如,我们平常定义一个对象这样子就可以了: var obj0 = { name : "nono" }; 我们也可以用新的方式,Object的属性设置方法defineProperty设置属性, 如果用户没有传enumberable, configurable, writable的值, 默认是false, 也

标准文档流

标准流指的是在不使用其他的与排列和定位相关的特殊CSS规则时,各种元素的排列规则.HTML文档中的元素可以分为两大类:行内元素和块级元素.       1.行内元素不占据单独的空间,依附于块级元素,行内元素没有自己的区域.它同样是DOM树中的一个节点,在这一点上行内元素和块级元素是没有区别的.       2.块级元素总是以块的形式表现出来,并且跟同级的兄弟块依次竖直排列,左右自动伸展,直到包含它的元素的边界,在水平方向不能并排.盒子在标准流中的定位原则margin控制的是盒子与盒子之间的距离,

3.2 标准库类型string(上)

#include <string> #include <iostream> using std::string; using std::cin; using std::cout; using std::endl; //string定义在命名空间std中 int main() { /**************3.2.1 定义和初始化string*****************/ string s1; //默认初始化,S1是一个空字符串 string S2 = s1; //S2时S

陈松松:选择适合视频营销暴利产品的4大标准

本文作者:陈松松 每个视频,都是你的金牌业务员 这是我的第5篇视频营销原创文章 我知道你一定会大致看一下,但今天的文章一定要一字不落! 今天的这个分享有关最适合视频营销的暴利产品,是我很早就想分享的,只是没有合适的机会! 主题也比较简单,核心内容我总结为4点: 第一,人得逼,马得骑 第二,选择视频营销暴利产品的4大标准 第三,送你1款最暴利的是视频营销产品 第四,商业的本质就是信息不对称 第五,给你2个选择暴利产品的平台做参考 我先来分享第一点, 第一,人得逼,马得骑 写文章真的是越来越有感觉了

JavaScript标准参考教材(alpha)--笔记

一.导论 二.基本语法 1.严格来说var a=1与a=1效果不太一样,delete命令无法删除前者. JavaScirpt是一种动态类型语言,也就是说,变量的类型没有限制,可以赋予各种类型的值. JavaScript引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行.中文是合法的标识符,可以用作变量名. switch语句后面的表达式与case语句后面的表示式,在比较运行结果时,采用的是严格相等运算符(===).swidth结构不利于代码重用,往往可以用对象形式重写. do

Obstack是C标准库里面对内存管理的GNU扩展

Obstack介绍 Obstack初始化 在Obstack中申请对象 释放对象 申请growing object 获取Obstack状态 数据对齐 以下是来自wiki对obstack的介绍: Obstack是C标准库里面对内存管理的GNU扩展(实际上就是GNU C library了).Obstack===Object stack.没错,Obstack就是一个栈,栈里面的元素是对象object(不是面向对象的对象哦,这里的对象单指数据元素).这些数据是动态的,也就是使用的是动态内存.这种内存管理技

标准的I/O和管道使用方法

标准的I/O和管道 程序:指令+数据 系统自带了许多二进制程序,这些二进制程序共有两部分组成,一部分是指令,一部分是数据. 指令就是指二进制程序中的内容,然而程序的运行,也需要数据来支撑. 标准输出  STDOUT  -1   standard  output 输入命令所呈现在屏幕上的内容称之为标准输出,但是不是所有的命令都有标准输出.例如cd  rm后面不跟参数时,就没有标准输出. 标准输出的默认设备就是当前终端窗口. 标准错误  STDERR  -2  standard  error 当命令

取证分析标准作业程序???

最近有人问我ISO 27037是什么?其实它就是有关电子证据处理的标准,但其实别被它的长篇大论给吓着了.若你有仔细看一下,它也只提到了”前段”的作业.也就是说,它提到了电子证据的搜集,保存,撷取,运送,但后面真正至为关键的分析程序,它就不提了.为何呢,因为太复杂之故. 很多单位很喜欢挂在嘴边的就是”遵循标准作业程序SOP”,听来多么专业啊~是的,乍听之下是有这么一回事.但内行人皆知,所谓SOP的主要精神及用意便是”防呆”,”防止手残”,等于为了让即便不是那么清楚为何如此执行的人,也能照表操课.但

【翻译自mos文章】将Oracle 12c数据库从标准版convert到企业版

将Oracle 12c数据库从标准版convert到企业版 来源于: How to Convert Oracle Database 12c from Standard to Enterprise Edition ? (文档 ID 2046103.1) APPLIES TO: Oracle Database - Enterprise Edition - Version 12.1.0.1 and later Information in this document applies to any pl