在做项目的时候 遇到一个很蛋疼的问题。。。
就是 JavaScript 不支持像PHP 这样的写法
var obj = {};
/* 模拟 PHP写法 但在JavaScript这样写是错误的 */
obj[] = '1';
obj[] = '2';
/* 这样定义是正确的 */
obj.a = 'a';
obj.b = 'b'
/* 这样定义也可以 */ <pre name="code" class="javascript"> obj['a'] = 'a';
obj['b'] = 'b';
于是就遇到一个很坑爹的现象,如果我不指定下标是不是就不能追加值了呢?但是 有的时候 我们并不知道数组的下标索引值 已经到了那个数了
在详细的查询手册 和 一阵头脑风暴后,用以下方式解决。 如果有更好的方式请一定留言!
<pre name="code" class="javascript"> var obj = {0:"0",1:"1",2:"2"};
var num = Object.keys(obj).length;
obj[num] = '3';
或者
obj.push(3);