• 初学Java10:JavaScript小结(一)


    JavaScript小结

    1.JavaScript是什么?动态的,弱类型
      (from W3School:http://www.w3school.com.cn/js/index.asp )
      JavaScript 是属于网络的脚本语言!
      JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。
      JavaScript 是因特网上最流行的脚本语言。

    2.实现:<script type="text/javascript"></script>标签。

    3.语句、注释、标识符(变量名,函数名)、保留字

    4.变量:弱类型

      变量类型是可变的

    5、数据类型:typeof运算符
      undefined
      Null == undefined
      Boolean (类型转换:if('yes'){....})
      Number NaN!=NaN, isNaN ,类型转换parseInt("1234.5abc"),parseFloat()
      String 类型转换:12.toString() 单引号,双引号
      function:函数类型

    6.运算符:基本和java差不多,其中“==”是指比较内容,eg:var a="123";var b=123;alert(a==b);//true
                    “===”是比较内容和类型,eg:var a="123";var b=123;alert(a===b);//false

    7.控制语句:基本和java差不多

    8.函数
      1)普通定义与调用
      2)动态参数arguments,下例:

     1   function plus(){
     2     //参数对象(数组)
     3     if(arguments.length>0){
     4         var sum=0;
     5         for(var i=0;i<arguments.length;i++){
     6         sum+=arguments[i];
     7       }
     8     }
     9     return sum;
    10   }
    11 //调用
    12 var x=plus(10,20,30,40);
    13 alert(x);//=100

      3)匿名定义和调用,匿名函数定义,定义匿名函数,将函数地址赋值给变量

    9.基本类型(undefined,null,number,boolean,string)/引用类型:Object 、Array、Function
      1)动态属性: delete p.name
      2)复制引用:

    var o1=new Object();
    var o2=o1;
    o1.name='ada';
    alert(o2.name);//ada

    3)传递参数 不能通过参数在函数内部改变外部对象
    4)类型检测 instanceof

    10.作用域:变量的有效范围
    1)执行环境;每个函数就是一个执行环境
    2)作用域链
    3)搜索变量
    4 )没有块级作用域
    5)声明变量(var)自动添加到最近的环境,未声明变量直接添加到全局环境

    11.Object创建的两种方式
    1)new Object()
    2){"name":"ada","sex":"male"} //JSON方式
    eg://Object对象创建的方式

    //1.new
    var p=new Object();
    p.name="ada";
    //2.JSON
    var p={"name":"ada","sex":"male"};
    alert(p.name);
    alert(p.sex);
    //属性访问方式
    alert(p["name"]);
    alert(p["sex"]);
    //遍历全部属性
    for(var a in p){
    document.write(p[a]);
    }

    12.Array
      1)创建:new Array();

    //1.
    var a=new Array(4);
    alert(a.length);
    //2.
    a[0]=1;
    a[1]=2;
    a[3]=4;
    alert(a[2]);

      2)创建并初始化: a=[1,2,3];
      3)数组动态性

    var a=[1,2,3];
    a[10]=11;
    alert(a.length);//11
    alert(a[3]);//undefined//a[3]---a[9]都是undefined

      4)转换:toString()
      5)push():添加尾元素

    var a=[1,2,3];
    a.push(4);//压栈
    alert(a);//1,2,3,4

      6)shift():删除头元素

    var a=[1,2,3,4];
    var x=a.shift();
    alert(x);//2,3,4

      7)sort(a,function(v1,v2){}),排序

    var a=[15,1,3,5,20,50];
    a.sort(function(v1,v2){
        if(v1>v2){
            return 1;
        }else if(v1<v2){
            return -1;
        }else{
            return 0;
        }
    });
    alert(a);//顺序,从小到大,1,3,5,15,20,50    

      8)slice(start,end)截取

    var a=[1,2,3,4,5,6,7,8];
    var b=a.slice(2,6);
    alert(b);//3,4,5,6

      9)splice :删除(0,2),插入(2,0,"aaa"),替换(2,1,"aaa)
      10)indexOf,返回某个指定的字符串值在字符串中首次出现的位置
      11)arr.forEach(function(item,index,array){});//迭代
      12)arr.every/arr.some
      13)filter筛选,eg: 筛选:10以上的元素

    var a=[15,2,12,3,5,11,18];
    var b=a.filter(function(item,index,array){
    return item>10;
    });
    alert(b);//15,11,18

    13.Date:
      1)创建 new Date()/new Date(2010,5,6,14,25,30)
      2)date.now()
      3)date.getTime()/getYear()/getMonth()/getDay()/getDate()

    14.Function
      1)函数作为参数值
      2)caller
      function A(){B();}
      function B(){alert(B.caller);}
    3)函数是对象:
      length属性,参数个数

    apply();
    call();
    window.color="red";
    var o={color:"blue"}
    function sayColor(){
    alert(this.color);
    }
    sayColor.call(window);
    sayColor.call(o);
    var oSayColor=sayColor.bind(o);
    oSayColor();

    15.Global终极对象
      eval方法,将字符串转化为表达式
      eg:var jstu=eval("("+jstr+")");//代码注入攻击,少用

    16.Math对象(from W3School:http://www.w3school.com.cn/jsref/jsref_obj_math.asp )
    方法      描述
    abs(x)    返回数的绝对值。
    acos(x)    返回数的反余弦值。
    asin(x)    返回数的反正弦值。
    atan(x)    以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
    atan2(y,x)   返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
    ceil(x)     对数进行上舍入。
    cos(x)     返回数的余弦。
    exp(x)    返回 e 的指数。
    floor(x)   对数进行下舍入。
    log(x)     返回数的自然对数(底为e)。
    max(x,y)  返回 x 和 y 中的最高值。
    min(x,y)   返回 x 和 y 中的最低值。
    pow(x,y)    返回 x 的 y 次幂。
    random()    返回 0 ~ 1 之间的随机数。
    round(x)   把数四舍五入为最接近的整数。
    sin(x)     返回数的正弦。
    sqrt(x)   返回数的平方根。
    tan(x)    返回角的正切。
    toSource() 返回该对象的源代码。
    valueOf()   返回 Math 对象的原始值。

        2016-10-13

  • 相关阅读:
    输人10个学生5门课的成绩,分别用函数实现下列功能:①计算每个学生的平均分; ②计算每门课的平均分; ③找出所有50个分数中最高的分数所对应的学生和课程; ④计算平均分方差: 其中,x;为某一学生的平均分。
    用递归方法求n阶勒让德多项式的值,递归公式为
    用牛顿迭代法求根。方程为ax^3+bx^2 +cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出
    写一个函数,用起泡法对输人的10个字符按由小到大顺序排列
    写一个函数,输人一行字符,将此字符串中最长的单词输出
    HEX文件格式
    Linux .bashrc
    Linux dd烧写系统
    以太坊代币与账户交易
    记录智能合约solidity编译的坑
  • 原文地址:https://www.cnblogs.com/a-zhi/p/5958134.html
Copyright © 2020-2023  润新知