您的位置:首页 > 移动开发 > Objective-C

BackBone 学习笔记 05 库函数Objects类

2014-12-16 12:17 483 查看
    这次讲下Objects类。

    Objects类中有keys(),values(),pick(),omit(),defaults(),has()等函数。

    以下是其具体介绍:

    一:keys()和values()

    js里面有很多键值对(key/values)形式的数据。

    通过调用keys()和values(),可以返回一个包含全部keys值或者values值的数组。

    代码如下:

  

var info={
name:'XiSe',
age:18,
email:'1727420286@qq.com'
}
var keys=_.keys(info);
var values=_.values(info);
console.log(keys);
console.log(values);

    结果显示的分别是:Array [ "name", "age", "email" ]

    Array [ "XiSe", 18, "1727420286@qq.com" ]

    一个返回键的数组,一个返回值的数组。

    二:pick()和omit()

    pick()和omit()可以根据指定的keys,选中和排除其中的元素。

    其原型为:pick(obj,*keys),omit(obj,*keys)

    可以接受复数个key。

    代码如下:

var pick=_.pick(info,'name','age');
console.log(pick);
var omit=_.omit(info,'name','age');
console.log(omit);

    控制台的结果为:Object { name: "XiSe", age: 18 }

    Object { email: "1727420286@qq.com" }

    三:defaults()函数

    通过调用defaults()函数可以设置对象的默认属性。

    其原型为:defaults(obj,*defaults)

    可以接受多个属性。

var defaults=_.defaults(info,{sex:'boy',qq:'1727420286'});
console.log(defaults);
defaults.sex="girl";
console.log(defaults);

 结果:Object { name: "XiSe", age: 18, email: "1727420286@qq.com", sex: "boy", qq: "1727420286" }

     Object { name: "XiSe", age: 18, email: "1727420286@qq.com", sex: "girl", qq: "1727420286" }

    这里可以发现。当重置对象中的元素时,原先的设置将会被覆盖。类似构造函数吧。

    四:has()函数

    可以检测某个对象是否存在某key,如果存在,返回true,否则返回false 

var str;
if(_.has(info,'school'))
str=info.school;
else
str="该对象中不存在school这个key";
console.log(str);

    结果:"该对象中不存在school这个key"

    上述代码还等效于如下代码。

var str1;
if(info.school!='undefined')
str1=info.school;
else
str1="该对象中不存在school这个key";
console.log(str);

    那么这次就讲这么多了,下次再见。

    个人博客:http://xgcwx.guet.edu.cn/XiseBlog/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  backbone object js