首页 > 编程语言 > 详细

JavaScript 中的“Map”

时间:2015-11-07 17:37:50      阅读:240      评论:0      收藏:0      [点我收藏+]
最近项目中遇到要拼接一个如下结构的对象
var testdesign = {
SQL: "selet id, name from sales",
Fields: {
total: 2,
Field1: {
name: "id",
jdbcType: 4
},
Field2: {
name: "name",
jdbcType: 12
}
}
}
JavaScript默认对象表示方式{}可以视为其他语言中的Map,即一组键值对。JavaScript的对象有个小问题,就是键必须是字符串
我拼装的写法如下
    var ColAttr = {};
    var Fields = {};
    Fields["total"] = columnDefs.length;
    for(var j = 0 ;j < columnDefs.length; j++){
        var colName = columnDefs[j].field;
        ColAttr["name"] = columnDefs[j].field;
        var type = tableName + ‘.‘ + colName;
        ColAttr["jdbcType"] = tableColumnType[type];
        var Fieldnum = "Field" + Number(j+1);
        Fields[Fieldnum] = ColAttr;
    }

var templateDesign = {
"SQL": sql,
"Fields": Fields
}
 

 


然后我就想知道javaScript里面有没有Map这种数据类型?
答案是:
在最新的ES6规范引入了新的数据类型Map,但目前支持的浏览器比较少~
初始化如下:
var m = new Map([[‘Michael‘, 95], [‘Bob‘, 75], [‘Tracy‘, 85]]);
m.get(‘Michael‘); // 95


var m = new Map(); // 空Map
m.set(‘Adam‘, 67); // 添加新的key-value
m.set(‘Bob‘, 59);
m.has(‘Adam‘); // 是否存在key ‘Adam‘: true
m.get(‘Adam‘); // 67
m.delete(‘Adam‘); // 删除key ‘Adam‘
m.get(‘Adam‘); // undefined

  

 


JavaScript 中的“Map”

原文:http://www.cnblogs.com/LJJ1010/p/4945648.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!