怎么区分jquery中1个=和2个=以及3个=有什么不同,如何使用,实例验证

2018-01-23 关键词:苏州网站建设  苏州网站制作  苏州网站开发  苏州做网站   2794

=,很好理解就是赋值的意思例如:

Var a=1;意思把1赋值给a

Console.log(a);输出显示是1

==(equality)等于, ===(identity)恒等,两边值类型相同时,用法等同于===;不同的时候,要先进行类型转换,再比较。

===,不做类型转换,类型不同的一定不等。

具体分析:

先说 ===,这个比较简单。下面的规则用来判断两个值是否===相等:

<pre>

alert('1'==1);//结果是true alert('1'===1);//结果是false

</pre>

1、如果类型不同,就[不相等]

2、如果两个都是数值,并且是同一个值,那么[相等](!例外)的是,如果其中至少一个是NaN,那么[不相等]。判断一个值是否是NaN,只能用isNaN()来判断。

3、如果两个都是字符串,每个位置的字符都一样,那么[相等];否则[不相等]

4、如果两个值都是true,或者都是false,那么[相等]

5、如果两个值都是null,或者都是undefined,那么[相等]

6、引用类型比较,进行“指针地址”比较,如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]

再说 ==,根据以下规则:

<pre>

alert(null==undefined);//结果是true alert(null===undefined);//结果是false 

</pre>

1、如果两个值类型相同,进行 === 比较。

2、如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较:

a、如果一个是null、一个是undefined,那么[相等],其他如”(空字符串),false0都不等。

b、如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。

c、如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。

d、如果一个是对象,另一个基本类型,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。js核心内置类,会尝试valueOf先于toString;例外的是DateDate利用的是toString转换。

对于Array,Object等高级类型,=====是没有区别的

<pre>

var a = [1,2,3];

var b = [1,2,3];

alert(a == b);  alert(a === b);        // 两个结果都是false

alert(a.sort().toString() == b.sort().toString());  // 结果是true

alert(a.sort().toString() === b.sort().toString());       // 结果是true

 

var a = $(".editor");

var b = $(".editor");

console.log(a === b);

//结果是 false

console.log(a.is(b));

//结果是 true

</pre>

首页 网站建设 小程序 品牌设计 服务项目 案例展示 售后保障 联系方式 新闻中心 关于我们 人才招聘
我们的优势

细致入微的前期服务
精准的策划服务
精湛的网页设计
稳定 可靠 极速的域名和服务器
任何问题,24小时回复并处理

版权所有:苏州谢谢网络传媒有限公司  苏ICP备11087090号   

首页 电话 服务项目