/*
*    == 进行比较的时候,如果左右两边数据类型不一样,则先转换为相同的数据类型,然后在进行比较
*      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!')
    }

如何让a==1&&a==2&a==3成立的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  2. C# 在腾讯的发展

    本文首发我的微信公众号"dotnet跨平台", 内容得到大家热烈的欢迎,全文重新发布在博客,欢迎转载,请注明出处. .NET 主要的开发语言是 C# , .NET 平台泛指遵循EC ...

  3. Linux 内核概述 - Linux Kernel

    Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...

  4. 读书笔记:JavaScript DOM 编程艺术(第二版)

    读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ...

  5. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  6. 告别被拒,如何提升iOS审核通过率(上篇)

    iOS审核一直是每款移动产品上架苹果商店时面对的一座大山,每次提审都像是一次漫长而又悲壮的旅行,经常被苹果拒之门外,无比煎熬.那么问题来了,我们有没有什么办法准确把握苹果审核准则,从而提升审核的通过率 ...

  7. 设计爬虫Hawk背后的故事

    本文写于圣诞节北京下午慵懒的午后.本文偏技术向,不过应该大部分人能看懂. 五年之痒 2016年,能记入个人年终总结的事情没几件,其中一个便是开源了Hawk.我花不少时间优化和推广它,得到的评价还算比较 ...

  8. session实现购物车

    为实现简单的购物功能(购物车添加.账户查看.购物车商品删除.实时的购物商品数量及价格的计算显示.购物车商品数量可手动输入等),用session实现了一简单的以php语言为基础.连接MySQL数据库的购 ...

  9. NYOJ 1007

    在博客NYOJ 998 中已经写过计算欧拉函数的三种方法,这里不再赘述. 本题也是对欧拉函数的应用的考查,不过考查了另外一个数论基本定理:如何用欧拉函数求小于n且与n互质所有的正整数的和. 记eule ...

  10. 虾扯蛋:Android View动画 Animation不完全解析

    本文结合一些周知的概念和源码片段,对View动画的工作原理进行挖掘和分析.以下不是对源码一丝不苟的分析过程,只是以搞清楚Animation的执行过程.如何被周期性调用为目标粗略分析下相关方法的执行细节 ...

随机推荐

  1. 利用css+js制作下拉列表

    利用文本框来制作,可以不影响给后台传数据.<!DOCTYPE html> <html> <head> <style> *{;;;} body{font- ...

  2. 自定Tinymce中的图片上传

    在引入组件上添加 上传图片的url地址 <tinymce :height="300" ref="tinymce" //上传图片的url地址 upload- ...

  3. [csu/coj 1078]多个序列的最长公共子序列

    题意:给n个序列,同一个序列里面元素互不相同,求它们的最长公共子序列. 思路:任取一个序列,对于这个序列里面的两个数ai,aj(i<j),如果对于其它每一个序列,都出现过ai,aj,且ai在aj ...

  4. 1020 Tree Traversals (25分)思路分析 + 满分代码

    题目 Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder an ...

  5. Docker学习笔记:镜像、容器、数据卷

    核心概念 镜像:一个只读的模板,类似虚拟机的镜像. 容器:可以理解为镜像的一个运行实例.运行时类似于沙箱,多个容器互相独立. 仓库:存放镜像文件的地方. 镜像 命令表格 命令 解释 选项 docker ...

  6. linux centos7 和 windows下 部署 .net core 2.0 web应用

    centos7 下部署asp.net core 2.0应用 安装CentOS7 配置网络[可选] 安装.Net core2.0 创建测试Asp.net Core应用程序 正式部署项目 安装VMware ...

  7. Linux shell 正则表达式用法

    1.“ \  ” 用法 用于关闭其后续字符的特殊含义,恢复字符的本身含义,如:\\ 表示字符 \ 2. “ . " 用法 匹配任意单个字符 3. " * " 用法 匹配任 ...

  8. IDEA图标大全

      IntelliJ IDEA 2019.3版本以来各种小图标的含义 Common Icon Description Class Abstract class Groovy class Annotat ...

  9. redis学习——day02_redis数据类型

    一.简介 Redis不仅仅是简单的key-value 存储器,同时也是一种data structures server.传统的key-value是指支持使用一个key字符串来索引value字符串的存储 ...

  10. POJ2377

    题目链接:http://poj.org/problem?id=2377 解题思路: Prim算法. Warning ! 注意考虑重边 ! 其实就是求最大生成树,没什么好说的,就上面那个坑. AC代码: ...