angularjs中的工具方法(forEach等)

2024-08-31 09:32

本文主要是介绍angularjs中的工具方法(forEach等),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

angular.bind(self, fn, args)

  • 作用:返回一个新的函数,绑定这个函数的this指向self
  • 参数: 
    • self:新函数的上下文对象
    • fn:需要绑定的函数
    • args:传递给函数的参数
  • 返回值:this指向self的新函数
    var obj = {
      name: 'xxx',
      print: function (country) {
        console.log(this.name + ' is form ' + country);
      }
    };
    var self = {
      name: 'yyy'
    };
    var bindFn = angular.bind(self, obj.print, 'China');
    //var bindFn = angular.bind(self, obj.print, ['China']);
    obj.print('American'); //$ xxx is form American
    bindFn(); //$ yyy is form China
    
    

注意:bind会根据你的参数类型来决定调用call或apply,所以args可以是一个个数据,也可以是一个数组哦。

angular.copy(source, [destination])

  • 作用:对象的深拷贝
  • 参数: 
    • source:源对象
    • destination:拷贝的对象
  • 返回值:拷贝的对象
    var obj = {
      name: 'xxx',
      age: 50
    };
    var copyObj = angular.copy(obj);
    console.log(copyObj); //$ Object {name: "xxx", age: 50}
    
    

angular.equals(o1, o2)

  • 作用:正常比较和对象的深比较
  • 参数: 
    • o1:比较的对象
    • o2:比较的对象
  • 返回值:boolean
    angular.equals(3, 3); //$ true
    angular.equals(NaN,NaN); //$ true
    angular.equals({name:'xxx'},{name:'xxx'}); //$ true
    angular.equals({name:'xxx'},{name:'yyy'}); //$ false
    

angular.extend(dst, src)

  • 作用:对象的拓展
  • 参数: 
    • dst:拓展的对象
    • src:源对象
  • 返回值:拓展的对象
    var dst = {name: 'xxx', country: 'China'};
    var src = {name: 'yyy', age: 10};angular.extend(dst, src);console.log(src); //$ Object {name: "yyy", age: 10}
    console.log(dst); //$ Object {name: "yyy", country: "China", age: 10}
    

angular.forEach(obj, iterator, [context])

  • 作用:对象的遍历
  • 参数: 
    • obj:对象
    • iterator:迭代函数
    • context:迭代函数中上下文
  • 返回值:obj
    var obj = {name: 'xxx', country: 'China'};
    angular.forEach(obj, function (value, key) {
      console.log(key + ':' + value);
    });
    //$ name:xxx
    //$ country:China
    var array = ['xxx', 'yyy'];
    angular.forEach(array, function (item, index) {
      console.log(index + ':' + item + ' form ' + this.country);
    }, obj);
    //$ 0:xxx form China
    //$ 1:yyy form China
    
    

angular.fromJson(string)

  • 作用:字符串转json对象
  • 参数: 
    • string:字符串
  • 返回值:json对象
    var json = angular.fromJson('{"name":"xxx","age":34}');console.log(json); //$ Object {name: "xxx", age: 34}
    

angular.toJson(json)

  • 作用:json对象转字符串
  • 参数: 
    • json:json
    • pretty:boolean number 控制字符串输出格式
  • 返回值:字符串
    angular.toJson({name:'xxx'});
    //$ "{"name":"xxx"}"angular.toJson({name:'xxx'},true);
    //$ "{
    //$    "name": "xxx"
    //$ }"angular.toJson({name:'xxx'},10);
    //$ "{
    //$            "name": "xxx"
    //$ }"
    

angular.identity(value)

  • 作用:返回这个函数的第一个参数
  • 参数: 
    • value:参数
  • 返回值:第一个参数
    console.log(angular.identity('xxx','yyy')); //$ xxx
    

angular.isArray(value)

  • 作用:判断一个数据是否是数组
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isArray(3); //$ false
    angular.isArray([]); //$ true
    angular.isArray([1, 2, 3]); //$ true
    angular.isArray({name: 'xxx'}); //$ false
    

angular.isDate(value)

  • 作用:判断一个数据是否是Date类型
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isDate('2012-12-02'); //$ false
    angular.isDate(new Date()); //$ true
    

angular.isDefined(value)

  • 作用:判断一个数据是否是defined类型
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isDefined(undefined) //$ false
    angular.isDefined([]); //$ true
    

angular.isUndefined(value)

  • 作用:判断一个数据是否是undefined类型
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isUndefined(undefined) //$ true
    angular.isUndefined([]); //$ false
    

angular.isFunction(value)

  • 作用:判断一个数据是否是函数
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isFunction(function(){}); //$ true
    angular.isFunction(3); //$ false
    

angular.isNumber(value)

  • 作用:判断一个数据是否是Number类型
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isNumber(4); //$ true
    angular.isNumber('xxx'); //$ false
    angular.isNumber(new Number(4)); //$ false
    angular.isNumber(Number(4)); //$ true
    

angular.isObject(value)

  • 作用:判断一个数据是否是对象
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isObject('xxx'); //$ false      
    angular.isObject(null); //$ false
    angular.isObject([]); //$ true
    angular.isObject(function(){}); //$ false
    angular.isObject({name:'xxx'}); //$ true
    

angular.isString(value)

  • 作用:判断一个数据是否是字符串
  • 参数: 
    • value:数据
  • 返回值:boolean
    angular.isString(4); //$ false
    angular.isString('xxx'); //$ true
    angular.isString(new String('xxx')); //$ false
    angular.isString(String('xxx')); //$ true
    

angular.lowercase(string)

  • 作用:将字符串大写字母变小写
  • 参数: 
    • string:字符串
  • 返回值:改变后的新字符串
    var newString = angular.lowercase('XXyyZZ');
    console.log(newString); //$ xxyyzz
    

angular.uppercase(string)

  • 作用:将字符串小写字母变大写
  • 参数: 
    • string:字符串
  • 返回值:改变后的新字符串
    var newString = angular.uppercase('XXyyZZ');
    console.log(newString); //$ XXYYZZ
    

angular.noop()

  • 作用:空函数
    var flag = false;    
    flag ? console.log('xxx') : angular.noop();
   angular.forEach()
var values = {"name":"zhangsan", "age":23, "from":"hn"};var results = [];/*angular.forEach(values, function(value, i){console.log(value+":"+i)console.log(i+":"+value)})*/angular.forEach(values, function(value, i){console.log(i+":"+value)  //name:zhangsan    age:23    from:hnthis.push(i+":"+value)//alert(this);  //this指的是results}, results);  //第三个参数为数组名console.log(results+"===")  //name:zhangsan,age:23,from:hn===


这篇关于angularjs中的工具方法(forEach等)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1123520

相关文章

检查 Nginx 是否启动的几种方法

《检查Nginx是否启动的几种方法》本文主要介绍了检查Nginx是否启动的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1. 使用 systemctl 命令(推荐)2. 使用 service 命令3. 检查进程是否存在4

Java方法重载与重写之同名方法的双面魔法(最新整理)

《Java方法重载与重写之同名方法的双面魔法(最新整理)》文章介绍了Java中的方法重载Overloading和方法重写Overriding的区别联系,方法重载是指在同一个类中,允许存在多个方法名相同... 目录Java方法重载与重写:同名方法的双面魔法方法重载(Overloading):同门师兄弟的不同绝

MySQL字符串转数值的方法全解析

《MySQL字符串转数值的方法全解析》在MySQL开发中,字符串与数值的转换是高频操作,本文从隐式转换原理、显式转换方法、典型场景案例、风险防控四个维度系统梳理,助您精准掌握这一核心技能,需要的朋友可... 目录一、隐式转换:自动但需警惕的&ld编程quo;双刃剑”二、显式转换:三大核心方法详解三、典型场景

MySQL快速复制一张表的四种核心方法(包括表结构和数据)

《MySQL快速复制一张表的四种核心方法(包括表结构和数据)》本文详细介绍了四种复制MySQL表(结构+数据)的方法,并对每种方法进行了对比分析,适用于不同场景和数据量的复制需求,特别是针对超大表(1... 目录一、mysql 复制表(结构+数据)的 4 种核心方法(面试结构化回答)方法 1:CREATE

详解C++ 存储二进制数据容器的几种方法

《详解C++存储二进制数据容器的几种方法》本文主要介绍了详解C++存储二进制数据容器,包括std::vector、std::array、std::string、std::bitset和std::ve... 目录1.std::vector<uint8_t>(最常用)特点:适用场景:示例:2.std::arra

springboot中配置logback-spring.xml的方法

《springboot中配置logback-spring.xml的方法》文章介绍了如何在SpringBoot项目中配置logback-spring.xml文件来进行日志管理,包括如何定义日志输出方式、... 目录一、在src/main/resources目录下,也就是在classpath路径下创建logba

SQL Server中行转列方法详细讲解

《SQLServer中行转列方法详细讲解》SQL行转列、列转行可以帮助我们更方便地处理数据,生成需要的报表和结果集,:本文主要介绍SQLServer中行转列方法的相关资料,需要的朋友可以参考下... 目录前言一、为什么需要行转列二、行转列的基本概念三、使用PIVOT运算符进行行转列1.创建示例数据表并插入数

C++打印 vector的几种方法小结

《C++打印vector的几种方法小结》本文介绍了C++中遍历vector的几种方法,包括使用迭代器、auto关键字、typedef、计数器以及C++11引入的范围基础循环,具有一定的参考价值,感兴... 目录1. 使用迭代器2. 使用 auto (C++11) / typedef / type alias

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步

Python+wxPython开发一个文件属性比对工具

《Python+wxPython开发一个文件属性比对工具》在日常的文件管理工作中,我们经常会遇到同一个文件存在多个版本,或者需要验证备份文件与源文件是否一致,下面我们就来看看如何使用wxPython模... 目录引言项目背景与需求应用场景核心需求运行结果技术选型程序设计界面布局核心功能模块关键代码解析文件大