zoukankan      html  css  js  c++  java
  • 如何让a==1&&a==2&a==3成立



    /*
    *    == 进行比较的时候,如果左右两边数据类型不一样,则先转换为相同的数据类型,然后在进行比较
    *      1、{} == {} false 两个数据进行比较,比较的是堆内存的地址
    *      2、null == undefined true | null === undefined false
    *      3、NaN == NaN false NaN 和谁都不相等
    *      4、[12] == "12" 对象和字符串比较,是把对象 toString() 转换为字符串之后再进行比较的
    *      5、剩余所有情况在进行比较的时候,都是转换为数字(前提数据类型不一样)
    *      对象转数字:先转换为字符串,然后在转换为数字
    *      字符串转数字:只要出现一个非数字字符,结果就是 NaN
    *      布尔转数字: true -> 1 false -> 2
    *      null 转数字:0
    *      undefined 转数字:NaN
    *
    *      [12] == true --> Number([12].toString()) == 1 => false
    *      [] == false --> 0 == 0 => true
    *      [] == 1 --> 0 == 1 => false
    *
    * ---------------------------------------------------
     
    */
    // 一、=> 对象和数字比较:先把对象 .toString() 变为字符串,然后再转换为数字
      var a = {
        n: 0,
        //=> 私有的属性方法
        toString: function () {
          return ++this.n;
        }
      };
    //a.toString(); //=> 此时调用的就不再是 Object.prototype.toString 了,调用的是私有的
      if (a == 1 && a == 2 && a == 3) {
        console.log('yes!')
      }
    // 二、 => shift:删除数组第一项,把删除的内容返回,原有数组改变
      let a = [1, 2, 3];
      a.toString = a.shift;
      if (a == 1 && a == 2 && a == 3) {
        console.log('yes!')
      }
    /*
    *    ES6 中新增加的一些方法
    *      String.fromCharCode([n]) <=> "z".charCodeAt()
    *      Array.from()
    *     Array.isArray()
    *       Object.create([Obj])
    *         Object.defineProperty()
    */
    // 三、 => Object.defineProperty 监听当前对象某个属性的各种情况
        Object.defineProperty(window, 'a', {
          get: function () {
            this.value ? this.value++ : this.value = 1;
            return this.value;
          }
        });
        if (a == 1 && a == 2 && a == 3) {
          console.log('yes!')
        }



  • 相关阅读:
    人工神经网络(Artificial Neural Networks)
    潜语义分析(Latent Semantic Analysis)
    IOS Dictionary和Model相互转换
    jquery ajax跨域请求webservice
    日期格式转换
    1
    iptables详解
    yum报错-Network is unreachable"Error:
    41个Web开发者JavaScript实用小技巧
    比较常用的几个maven第三方镜像
  • 原文地址:https://www.cnblogs.com/HYTing/p/12623328.html
Copyright © 2011-2022 走看看