对象和数组

区别:对象无序,数组有序;对象属性有名称,数组无名称。

/* 对象 */
{ mark: 'com.auto.cloud', version: '1.0.3' };

/* 数组 */
[ 'com.auto.cloud', '1.0.3' ];

/* json字符串 */
{"mark":"com.auto.cloud","version":"1.0.3"};

对象

/* 创建对象 */
myapp = new Object();

/* 属性置值(添加属性) */
myapp.mark = "com.auto.cloud";
myapp['version'] = "1.0.3";

/* 删除属性 */
delete myapp['mark'];

/* 取属性值 */
myapp.mark;
myapp['mark'];

/* 取所有属性名 */
Object.keys(myapp);

/* 取属性数量 */
Object.keys(myapp).length;

/* 对象转换json字符串 */
myapp = JSON.stringify(myapp);

/* json字符串转换对象 */
myapp = JSON.parse(myapp);
/* 遍历对象 for 如果是json字符串,转换为对象:JSON.parse(myapp); */
let keys = Object.keys(myapp);  /* 取所有属性名 */
let length = keys.length;  /* 优化:使用临时变量,避免重复获取。 */
for (let i = 0; i < length; i++) {
    print(i);  /* 循环1次变量+1 */
    print(keys[i]);  /* 属性名 */
    print(myapp[keys[i]]);  /* 属性值 */
}
/* 遍历对象 for in 如果是json字符串,转换为对象:JSON.parse(myapp); */
for (let key in myapp) {
    print(key);  /* 属性名 */
    print(myapp[key]);  /* 属性值 */
}

数组

/* 创建数组 */
myapp = new Array();

/* 加入数组 */
myapp.push("com.auto.cloud");

/* 删除数组 常用方法 */
delete myapp[0];  /* 从索引删除数据,数据长度和索引不会改变,数据变为undefined。 */
myapp.pop();  /* 删除最后一条数据,数组长度和索引会改变。 */
myapp.splice(-1,1);  /* 从索引删除数据,数组长度和索引会改变。参数值:(索引,删除数量) 索引负数=数组结尾,删除数量为0=不删除。myapp.splice(0)全部删除,myapp.splice(1)从索引1开始全部删除。 */

/* 取数组 */
myapp;
myapp[0];

/* 取数组数量 */
myapp.length;
/* 遍历数组 for */
let length = myapp.length;  /* 优化:使用临时变量,避免重复获取。 */
for (let i = 0; i < length; i++) {
    print(i);  /* 循环1次变量+1 */
    print(myapp[i]);  /* 数据 */
}
/* 遍历数组 for in */
for (let key in myapp) {
    print(key);  /* 索引 */
    print(myapp[key]);  /* 数据 */
}
Last modification:April 12, 2022
如果觉得我的文章对你有用,请随意赞赏