03.01.2015, 03:25
|
Аспирант
|
|
Регистрация: 14.12.2014
Сообщений: 86
|
|
Как разобрать json
Здравствуйте.
помогите разбить JSON вида:
с: {
a1:1
b1:2
}
на json вида
e:[a,b] и d:[1,2]
|
|
03.01.2015, 04:12
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Это не JSON, это объекты JS.
|
|
03.01.2015, 13:08
|
Аспирант
|
|
Регистрация: 14.12.2014
Сообщений: 86
|
|
Сообщение от Safort
|
Это не JSON, это объекты JS.
|
хорошо. учту. А как разбить эти объекты?
|
|
03.01.2015, 13:23
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
Dtri,
var с = {"a1":1,"b1":2}, d = [], e = [];
Object.keys(с).forEach(function (key) {
d.push(с[key])
e.push(key.replace(/\d/,''))
});
alert([d,e].join('\n'))
|
|
03.01.2015, 15:51
|
Аспирант
|
|
Регистрация: 14.12.2014
Сообщений: 86
|
|
Сообщение от рони
|
Dtri,
var с = {"a1":1,"b1":2}, d = [], e = [];
Object.keys(с).forEach(function (key) {
d.push(с[key])
e.push(key.replace(/\d/,''))
});
alert([d,e].join('\n'))
|
рони, спасибо.
поясни пожалуйста.
(/\d/,'')
это регулярное выражение?
и что оно делает?
|
|
03.01.2015, 16:22
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
Dtri,
да, убирает 1 в a1 и b1
|
|
04.01.2015, 00:18
|
Профессор
|
|
Регистрация: 09.11.2014
Сообщений: 610
|
|
o={a: 1, b: 2}
a=[]; b=[]
for(i in o){a.push(i); b.push(o[i])}
alert([a,b])
// [ [ 'a', 'b' ], [ 1, 2 ] ]
|
|
04.01.2015, 11:18
|
|
Профессор
|
|
Регистрация: 22.03.2012
Сообщений: 3,744
|
|
krutoy,
o={a: 1, b: 2}
a=[]; b=[]
o.__proto__.c = 8;
for(i in o){a.push(i); b.push(o[i])}
alert([a,b])
// [ [ 'a', 'b', 'c' ], [ 1, 2, 8 ] ]
|
|
04.01.2015, 14:52
|
Аспирант
|
|
Регистрация: 14.12.2014
Сообщений: 86
|
|
Сообщение от bes
|
krutoy,
o={a: 1, b: 2}
a=[]; b=[]
o.__proto__.c = 8;
for(i in o){a.push(i); b.push(o[i])}
alert([a,b])
// [ [ 'a', 'b', 'c' ], [ 1, 2, 8 ] ]
|
а зачем тут o.__proto__.c = 8?
и что делает __proto__?
в данном случае.
насколько я понял добавляет в объект "о"
с:8
после чего
о={a:1, b:2, c:8}
правильно?
Последний раз редактировалось Dtri, 04.01.2015 в 14:54.
|
|
04.01.2015, 14:56
|
|
Профессор
|
|
Регистрация: 22.03.2012
Сообщений: 3,744
|
|
Сообщение от Dtri
|
а зачем тут o.__proto__.c = 8?
|
а почему бы и нет
Сообщение от Dtri
|
и что делает __proto__?
|
слабо прогуглить?
Сообщение от Dtri
|
в данном случае.
|
for-in выводит все свойства с учётом перечисляемых свойств прототипа
|
|
|
|