javascript 基础 相等操作符
2012-06-18 15:45
459 查看
确定两个变量是否相等在编程中极为重要,使用异常的多。
基础认识
ECMAScript提供两组操作符:
相等和不相等——先转换再比较
全等和不全等——仅比较而不转换
相等和不相等
在不同数据类型时,遵循以下基本原则。
如果有个一是布尔值,则先将其转换为数字——false转换为0,true转换为1
如果一个是字符串,另一个是数值,则将字符串转换为数字在比较
如果有一个操作数是对象,另一个不是则调用对象的valueOf()方法,用得到的原始值进行比较。
全等和不全等
除了在比较值钱不转换操作数之外,全等和不全等与相等和不相等没有什么区别
基础认识
ECMAScript提供两组操作符:
相等和不相等——先转换再比较
全等和不全等——仅比较而不转换
相等和不相等
在不同数据类型时,遵循以下基本原则。
如果有个一是布尔值,则先将其转换为数字——false转换为0,true转换为1
如果一个是字符串,另一个是数值,则将字符串转换为数字在比较
如果有一个操作数是对象,另一个不是则调用对象的valueOf()方法,用得到的原始值进行比较。
alert("1" == 1); // true 数字和字符串比较 alert(true == 1); // true 布尔类型和数字比较 alert(NaN == NaN); // false alert(null == undefined); // true undefined是派生自null出来的 function Product(name,price){ this.name = name; this.price = price; } Product.prototype.valueOf = function(){ return this.price; } Product.prototype.toString = function(){ return this.name; } var banana = new Product("banana",2.1); var carrot = new Product("carrot",1.5); alert(banana == 2.1); // true 调用了valueOf()方法,返回价格
alert(banana > carrot); // true 调用了valueOf()方法,返回价格比较
//
全等和不全等
除了在比较值钱不转换操作数之外,全等和不全等与相等和不相等没有什么区别
alert(ture === 1) // false 数据类型不同 alert("5" === 5) // false 数据类型不同 //接着上面创建的对象 alert(alert(banana === 2.1)) //false 不进行数据类型转化,不会调用对象的valueOf方法
相关文章推荐
- Javascript基础教程之比较操作符
- javascript基础知识梳理-表达式和操作符
- js基础--javascript基础概念之简单操作符
- javascript基础之操作符
- javascript基础(赋值运算符,关系运算符,相等运算符,三元运算符,运算符的优先级,代码块)(十)
- JavaScript(5) - 相等操作符(==和===)
- Javascript基础系列之(五)条件语句(比较操作符)
- 04 JavaScript基础之--操作符
- 深入JavaScript的相等操作符
- Javascript基础教程之比较操作符
- JavaScript高级程序设计之基本概念之相等操作符第3.5.7讲笔记
- JavaScript中相等和全等操作符的差异
- Javascript基础系列之(五)条件语句(逻辑操作符)
- 栋栋晓09:Javascript学习总结:基础知识1(语法、关键字和保留字、变量、数据类型、操作符)
- Javascript 基础知识 - 操作符 - in
- JavaScript高级程序设计之基本概念之相等操作符第3.5.8讲笔记
- JavaScript操作符(关系操作符、相等操作符和条件操作符)
- javascript高级程序设计之相等操作符
- 【javascript基础】函数前面的一元操作符
- JavaScript基础学习笔记(二)——操作符、语句、函数