相关疑难解决方法(0)

JavaScript对象的长度

如果我有一个JavaScript对象,请说

const myObject = new Object();
myObject["firstname"] = "Gareth";
myObject["lastname"] = "Simpson";
myObject["age"] = 21;
Run Code Online (Sandbox Code Playgroud)

是否有内置或接受的最佳实践方法来获取此对象的长度?

javascript javascript-objects

2224
推荐指数
30
解决办法
169万
查看次数

如何获得对象长度

是否有任何可以返回对象长度的内置函数?

例如,我a = { 'a':1,'b':2,'c':3 }应该返回3.如果我使用a.length它返回undefined.

它可能是一个简单的循环函数,但我想知道是否有内置函数?

有一个相关的问题(JSON对象的长度) - 在选择的答案中,用户建议将对象转换为数组,这对我的任务来说不太舒服.

javascript json object

278
推荐指数
9
解决办法
51万
查看次数

获取json对象的大小

我有一个json对象,由AJAX请求返回,我遇到了一些麻烦,.length因为它一直在返回undefined.只是想知道我是否正确使用它:

console.log(data.length);
console.log(data.phones.length);
Run Code Online (Sandbox Code Playgroud)

它们都返回,undefined即使它们是有效的对象.

更新:
返回的JSON对象的示例:

{"reqStatus":true,"phones":{"one":{"number":"XXXXXXXXXX","type":"mobile"},"two":{"number":"XXXXXXXXXX","type":"mobile"}}}
Run Code Online (Sandbox Code Playgroud)

javascript json

224
推荐指数
6
解决办法
54万
查看次数

如何计算JavaScript对象的属性?

假设我在JavaScript中有以下对象:

var object = {
  "key1": "value1",
  "key2": "value2",
  "key3": "value3"
}; 
Run Code Online (Sandbox Code Playgroud)

如何找出对象中存在多少个值?

javascript object

160
推荐指数
6
解决办法
24万
查看次数

为什么扩展本机对象是一种不好的做法?

每个JS意见领袖都说扩展原生对象是一种不好的做法.但为什么?我们是否获得了性能?他们是否害怕有人以"错误的方式"做到这一点,并添加了可枚举的类型Object,几乎破坏了任何对象上的所有循环?

TJ Holowaychukshould.js为例.他增加了一个简单的getterObject,一切工作正常(来源).

Object.defineProperty(Object.prototype, 'should', {
  set: function(){},
  get: function(){
    return new Assertion(Object(this).valueOf());
  },
  configurable: true
});
Run Code Online (Sandbox Code Playgroud)

这真的很有道理.例如,可以扩展Array.

Array.defineProperty(Array.prototype, "remove", {
  set: function(){},
  get: function(){
    return removeArrayElement.bind(this);
  }
});
var arr = [0, 1, 2, 3, 4];
arr.remove(3);
Run Code Online (Sandbox Code Playgroud)

是否有任何反对扩展本机类型的论据?

javascript prototype prototypal-inheritance

121
推荐指数
7
解决办法
3万
查看次数

javascript对象中的元素数量

有没有办法从某个地方获取javascript对象中的元素数量?(即恒定时间复杂度).

我找不到检索该信息的属性或方法.到目前为止,我只能想到在整个集合中进行迭代,但那是线性时间.
很奇怪,没有直接访问对象的大小,你不觉得.

编辑:
我说的是Object对象(一般不是对象):

var obj = new Object ;
Run Code Online (Sandbox Code Playgroud)

javascript collections elements javascript-objects

98
推荐指数
4
解决办法
14万
查看次数

ES6中的地图与对象,何时使用?

参考:MDN地图

当密钥未知时直到运行时,并且当所有键都是相同类型且所有值都是相同类型时,请使用对象上的映射.

当存在对各个元素进行操作的逻辑时使用对象.

题:

在对象上使用地图的适用示例是什么?特别是"什么时候直到运行时才能知道密钥?"

var myMap = new Map();

var keyObj = {},
    keyFunc = function () { return 'hey'},
    keyString = "a string";

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, "value associated with keyObj");
myMap.set(keyFunc, "value associated with keyFunc");

console.log(myMap.get(keyFunc));
Run Code Online (Sandbox Code Playgroud)

javascript javascript-objects ecmascript-6

80
推荐指数
5
解决办法
2万
查看次数

Javascript计算对象中的对象数

我有一个像这样的对象:

Object {0=Object, 1=Object, 2=Object} // Output from console.log(obj.Data);
Run Code Online (Sandbox Code Playgroud)

但是我无法计算对象中的对象数,最后从子对象中获取属性值.

我试过了

console.log(obj.Data[0].length); // It does not work

console.log(obj.Data.length); // It does not work
Run Code Online (Sandbox Code Playgroud)

这对我来说有点棘手.希望你们能帮忙.

javascript object count

79
推荐指数
3
解决办法
14万
查看次数

如何对Javascript对象进行排序,或将其转换为数组?

我从服务器获得了一些JSON数据.在我的JavaScript中,我想对它进行一些排序.我认为sort()函数会做我想要的.

但是,似乎JavaScript在到达时立即将JSON数据转换为Object.如果我尝试使用sort()方法,我会得到错误a-plenty(使用Firebug进行测试).

我环顾网络,每个人似乎都说,一方面,JSON对象已经是JavaScript数组,而且对象可以像数组一样对待.就像这个问题一样,在其中一个答案中,一个人说"[对象]是你的数据 - 你可以像对待数组那样访问它."

但是,这并不完全正确.JavaScript不允许我在我的对象上使用sort().而且由于默认的假设是它们都是一样的,所以似乎没有关于如何将Object转换为数组的任何指令,或强制JavaScript将其视为一个或类似的东西.

那么......我如何让JavaScript让这个数据作为数组处理并排序()呢?

我的对象的控制台日志输出看起来像这样(我希望能够按"级别"中的值排序):

OBJECT JSONdata

{ 
1: {
    displayName: "Dude1",
    email: "dude1@example.com<mailto:dude1@example.com>",
    lastActive: 1296980700, 
    level: 57, 
    timeout: 12969932837
}, 2: {
    displayName: "Dude2",
    email: "dude2@example.com<mailto:dude2@example.com>",
    lastActive: 1296983456,
    level: 28,
    timeout: 12969937382
}, 3: {
    displayName: "Dude3",
    email: "dude3@example.com<mailto:dude3@example.com>",
    lastActive: 1296980749,
    level: 99,
    timeout: 129699323459
} 
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays sorting json object

37
推荐指数
4
解决办法
5万
查看次数

如何计算JSON数组元素的长度

我正在尝试计算JSON数组元素的长度.我知道要计算使用数组的长度json.array.length.这需要找到每个索引中有多少项.

如果我的数组是:

  {"shareInfo":[{"id":"1","a":"sss","b":"sss","question":"whi?"},
  {"id":"2","a":"sss","b":"sss","question":"whi?"},
  {"id":"3","a":"sss","b":"sss","question":"whi?"},
  {"id":"4","a":"sss","b":"sss","question":"whi?"}]}
Run Code Online (Sandbox Code Playgroud)

然后我需要找到它的长度{"id":"1","a":"sss","b":"sss","question":"whi?"}.在这有四个项目.我试过这个data.shareInfo[i].length.但它会产生错误.

请有人告诉我如何找到长度....谢谢......

javascript jquery

35
推荐指数
2
解决办法
15万
查看次数