zoukankan      html  css  js  c++  java
  • javascript 高级程序设计 四

    新的一天开始,让我们伴随者轻快的心情,开始今天的笔记

    1、操作符:

      (1): *、/、-在ECMAScript中操作的时候,如果遇到有一个操作值不是数值型(Number),那么就会在后台调用number()方法,将其转化成Number

        (2): +和上面的三个操作符是不一样的,只要其中一个操作值不是Number,那么就会在后台调用toString()或valueOf(),得到String类型,总的来说:

               就是只要一个操作值不是Number那么,就会默认调用所有操作值的toString()或valueOf()方法来进行字符串的拼接。除非由():

            alert('String'+4+5);//Stirng45 

            alert('String'+(4+5));//String9

       (3):==和===的区别:

          ==在ECMAScript是比较'不严谨'的:废话不都说了直接上表格,写例子

        

    表达式
    null==undefined true
    NaN==NaN false
    '5'==5 true
    false==0 true
    true==1 true
    true==2 false
    undefined==0 false
    null==0 false
    NaN!=NaN true
       
       

          

          所以在项目中我们一律使用全等(===)和不全等(!==),在这种情况下比较的两个操作数就会进行额外的转化。

          例如::'5' === 5;//false    

        (4):switch()语句:

       在ECMAScript中switch是自我鉴定语句,和其他语言有所不同,1:可以在switch中使用任何数据类型,2:每一个case不一定是常量

          var Str = 'String';

          switch(true){

            case: Str < 'string':

              alert('xiaoyu');

              break;

            case: Str > 'string'

              alert('dayu');

              break;

            default :

              alert('String');

          }   

       (5)、function()的参数:

          在ECMAScript中方法的参数虽然可以在方法声明上写入几个参数,但是在调用的时候,我们可以不一定非得传入相同的参数个数的

    参数,这是因为在ECMAScript中,参数其实都是在方法内部以类似数组的格式储存者,并且每个方法内部都会维护者一个arguments这么一个对

    ,因为他类似与数组,所以可以用arguments[0]来代指第一个参数。虽然arguments这个对象储存在计算机中的空间和传入的参数的储存空间

    不是同一个,但是他们却是联动的(但方向的联动,也就是命名参数不会改变arguments中对应的值,另外值传入一个参数,那么arguments[1]设

    置的值不会反应到命名参数中),就是arguments中的值永远与对应参数的值保持同步。

          function doAdd(num1,num2){

            if(arguments.length === 1){

              arguments[0]+=10;

              alert(num1);

            }else(arguments.length === 2){

              arguments[1]+=10;

              alert(arguments[0] + num2);

            }

          }  

          并且在ECMAScript中没有重载,如果有了两个相同名字的函数,则改名字只属于后定义的函数。

  • 相关阅读:
    server.port 在单元测试中,调用的类或者方法这个地方获取到的端口号就会变成-1
    SpringBoot读取application.properties文件
    javaWeb 使用 filter 处理全站乱码问题
    web.xml里<filter-mapping>中的<dispatcher>作用
    SpringBoot中使用Interceptor
    精通Spring Boot
    Spring MVC之@ControllerAdvice详解
    Spring Boot 优雅的配置拦截器方式
    【Spring学习笔记-MVC-17】Spring MVC之拦截器
    C#构造方法(函数)
  • 原文地址:https://www.cnblogs.com/wang985850293/p/5237840.html
Copyright © 2011-2022 走看看