Angular - - angular.equals

angular.equals

对比两个对象/值是否相等。支持值类型、正则表达式、数组和对象。

如果下列至少有一个是正确的,则将两个对象/值视为相等。

  • 两个对象/值能通过===比较。
  • 两个对象/值是同一类型/他们的属性一致并且通过angular.equals详细比较。
  • 两者都是NaN. (在javascript中, NaN == NaN => false. 但是我们认为两个 NaN 是平等的)
  • 两个值都代表相同的正则表达式 (在JavaScript里, /abc/ == /abc/ => false. 但是我们认为,在文本匹配时,正则表达式是相同的).

格式:angular.equals(o1,o2);

o1:对比的对象/值 1

o2:对比的对象/值 2

使用代码:

  var a = 10;//number
  var b = "10";//string
  var _valueF = angular.equals(a,b); //false
  var c = 10;//number
  var _valueT = angular.equals(a,c); //true

野兽的理解是:对两个对象或者值进行一次较深的对比,并返回对比的结果。

angularequals就像在JavaScript里面,有 “==” 和 “===” 的对比(这点在它的介绍里也提了):

  var a = 1;//number
  var b = "1";//string
  var _valueF = (a == b);//true
  var _valueT = (a === b);//false
  var c = 1;//number
  var _valueTH = (a == c);//true
  var _valueFO = (a === c);//true

那么angular.equals的对比就是和JavaScript 的 “===” 相同咯,对进行对比的两个值的对比要求比较高,需要他们两的类型/属性/值都能对应的上。

然后就没有然后了...

时间: 2024-10-05 19:37:30

Angular - - angular.equals的相关文章

angular的equals

判断二者值是否相同,angular 提供了一个 api :angular.equals(a, b),接两个参数. 基本数据类型,它直接比较值,这一点我们可以直接用 "==" 来判断.之所以记录它,说明它强大的地方:判断两个对象是否相等. 如果我们用两个对象做 == 判断,只要布置一方赋值给另一方,那么他们的存储地址永远都不会相同,也就是说 "==" 比较的仅仅是值,而 equals 可以比较引用的地址后的值: $scope.obj1 = {name:'1'}; $s

Angular Angular 部分2

临时笔记 太新了,现成的组件少, 自己封装一个 Angular UI 组件 Angular2采用自定义指令(Directive)方式加载jquery插件(别人跟着试了,无法实现) http://www.jb51.net/article/105121.htm 下面是几乎没有语法高亮的原文 http://www.cnblogs.com/liuyt/p/5810100.html AngularJS的组件封装 需求: 将一个Echarts封装成一个通用的AngularJS组件. 需求来源:Echarts

[Angular] Angular CLI

Create an app with routing config: ng new mynewapp --routing If you want to generate a new module with routing , you can also do: ng g m mynewModule --routing Define env variable: You can create a custom env file inside env folder. // environment.ch.

Angular - - angular.forEach、angular.extend

angular.forEach 调用迭代器函数取每一项目标的集合,它可以是一个对象或数组.迭代器函数与迭代器(value.key)一起调用,其中值是一个对象属性或数组元素的值,而数组元素是对象属性的关键或数组元素索引.为函数指定一个可选的上下文. 格式:angular.forEach(obj,iterator,[context]); obj:遍历的对象 iterator:迭代器 [content]: 对象为迭代器函数的上下文(this) 使用代码: var arr = [{ name: "A&q

[Angular] Angular Global Keyboard Handling With EventManager

If we want to add global event handler, we can use 'EventManager' from '@angular/platform-broswer'. Now we have a modal component, we want to click 'Esc' key to close the modal. <au-modal class="auth-modal" *auModalOpenOnClick="[loginBut

Angular - - Angular数据类型判断

angular.isArray 判断括号内的值是否为数组. 格式:angular.isArray(value); value: 被判断是否为数组的值. --------------------------------------------------------------- angular.isDate 判断括号内的值是否是一个时间. 格式:angular.isDate(value); value:被判断是否为时间的值. -----------------------------------

Angular - - angular.Module

angular.Module Angular模块配置接口. 方法: provider(name,providerType); name:服务名称. providerType:创建一个服务的实例的构造函数. factory(name,providerFunction); name:服务名称. providerFunction:创建服务的实例的函数. service(name,constructor); name:服务名称. constructor:一个将被实例化的构造函数. value(name,

Angular - - angular.uppercase、angular.lowercase、angular.fromJson、angular.toJson

angular.uppercase 将指定的字符串转换成大写 格式:angular.uppercase(string); string:被转换成大写的字符串. 使用代码: var str = "ABCabc"; var upperCase = angular.uppercase(str);//ABCABC angular.lowercase 将指定的字符串转换成小写 格式:angular.lowercase(string); string:被转换成小写的字符串. 使用代码: var s

Angular - - angular.identity和angular.noop

angular.identity 函数返回本身的第一个参数.这个函数一般用于函数风格. 格式:angular.identity() 使用代码 (function () { angular.module("Demo", []) .controller("testCtrl", testCtrl); function testCtrl() { var getResult = function (fn, val) { return (fn || angular.identi