微信小程序的对象Object

从事Java开发的工作者常常会用到Map这个数据结构,但是在微信小程序的数据结构中目前只有以下几种数据结构:

  • number : 数值
  • string :字符串
  • boolean:布尔值
  • object:对象
  • function:函数
  • array : 数组
  • date:日期
  • regexp:正则

里面并没有Map这个数据结构。不过object提供了键值对功能。
可以在一定程度上替代Java里面的Map对象。以下是常用的几种方法:

var o = {} //生成一个新的空对象

//生成一个新的非空对象
o = {
  'string'  : 1,  //object 的 key 可以是字符串
  const_var : 2,  //object 的 key 也可以是符合变量定义规则的标识符
  func      : {}, //object 的 value 可以是任何类型
};

//对象属性的读操作
console.log(1 === o['string']);
console.log(2 === o.const_var);

//对象属性的写操作
o['string']++;
o['string'] += 10;
o.const_var++;
o.const_var += 10;

//对象属性的读操作
console.log(12 === o['string']);
console.log(13 === o.const_var);

//获取对象长度
var length = Object.keys(o).length;

//第一种检测对象中是否有这个属性
"string" in point; //这一个表达式最后返回的将会是true。
“const_var ” in o;//如果键不是字符串,需要把键变成字符串进行检查,否则会出现未定义错误
 "toString" in point; //由于toString是继承方法,所以也是返回true.
 "z" in point; //这一表达式最后返回false,因为point对象中没有z属性.
 
//第二种检测对象中是否包含这个属性
 o.hasOwnProperty("string"); //true:o有这一属性,
 o.hasOwnProperty("const_var "); //true;
o.hasOwnProperty("toString"); //false

//添加属性:
o.lastElement = 0;//这个属性会直接添加进对象o中

//删除
delete o['string'];//删除string元素
delete o[0];//删除第1个元素

修改,可以直接

//遍历循环:
Object.entries(o).forEach(([key, value]) => console.log(`${key}: ${value}`));
for (var item in o){
          var key = item;
          var value = o[key];
          console.log("---->key:"+key+"---->value:"+value);
        }

通过以下链接能获取到更详细的资料
参考链接:
https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxs/06datatype.html
https://www.cnblogs.com/pingchuanxin/p/5773326.html#part4
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值