是否可以从 javascript 中的对象数组中获取特定属性?
Is it possible to get specific attribute form an array of objects in javascript?
我将以下对象在数组中传递给我:
[ { id: 'WA1WA1WAbWA2WAaWAbWA9WA6-WAdWA2WAaWAd-4WAbWAcWA3-WAbWA3WA7WAa-WAcWAbWA8WA9WAcWA9WA9WA9WA3WA3WA3WA9',
obj: '<svg data="BusinessProductFigure" x="484.171875" y="123" id="WA1WA1WAbWA2WAaWAbWA9WA6-WAdWA2WAaWAd-4WAbWAcWA3-WAbWA3WA7WAa- WAcWAbWA8WA9WAcWA9WA9WA9WA3WA3WA3WA9"
xmlns="http://www.w3.org/2000/svg" version="1.1"><rect x="4" y="4"
width="60" height="14" fill="rgb(299,299,162)" stroke-linejoin="round"
stroke="rgb(299,299,162)" stroke-width="1"/></svg>' } ]
是否可以在 SVG 标签内的单独变量中获取 X 和 Y 值?是否有任何条件或分隔符可以以某种方式使用?
var arr = [{
id: 'JKIU',
obj: '<svg data="BusinessProductFigure" x="484.171875" y="123" id="FRRR" xmlns="http://www.w3.org/2000/svg" version="1.1" > <rect x="4" y="4" width="60" height="14" fill="rgb(299,299,162)" stroke-linejoin="round" stroke="rgb(299,299,162)" stroke-width="1"/></svg>'
}];
var div = document.createElement('div');
div.innerHTML = arr[0].obj;
// var svg = div.querySelector('svg');
var svg = div.firstChild;
var x = svg.getAttribute('x');
var y = svg.getAttribute('y');
console.log(x, y);
像这样使用DOMParser:
var x = [ { id: 'WA...',
obj: '<svg data="BusinessProductFigure" x="484.171875" y="123" id="WA..." xmlns="http://www.w3.org/2000/svg" version="1.1"><rect x="4" y="4" width="60" height="14" fill="rgb(299,299,162)" stroke-linejoin="round" stroke="rgb(299,299,162)" stroke-width="1"/></svg>' } ]
var dom = new DOMParser().parseFromString(x[0].obj, 'image/svg+xml');
alert(dom.documentElement.getAttribute("x"));
我将以下对象在数组中传递给我:
[ { id: 'WA1WA1WAbWA2WAaWAbWA9WA6-WAdWA2WAaWAd-4WAbWAcWA3-WAbWA3WA7WAa-WAcWAbWA8WA9WAcWA9WA9WA9WA3WA3WA3WA9',
obj: '<svg data="BusinessProductFigure" x="484.171875" y="123" id="WA1WA1WAbWA2WAaWAbWA9WA6-WAdWA2WAaWAd-4WAbWAcWA3-WAbWA3WA7WAa- WAcWAbWA8WA9WAcWA9WA9WA9WA3WA3WA3WA9"
xmlns="http://www.w3.org/2000/svg" version="1.1"><rect x="4" y="4"
width="60" height="14" fill="rgb(299,299,162)" stroke-linejoin="round"
stroke="rgb(299,299,162)" stroke-width="1"/></svg>' } ]
是否可以在 SVG 标签内的单独变量中获取 X 和 Y 值?是否有任何条件或分隔符可以以某种方式使用?
var arr = [{
id: 'JKIU',
obj: '<svg data="BusinessProductFigure" x="484.171875" y="123" id="FRRR" xmlns="http://www.w3.org/2000/svg" version="1.1" > <rect x="4" y="4" width="60" height="14" fill="rgb(299,299,162)" stroke-linejoin="round" stroke="rgb(299,299,162)" stroke-width="1"/></svg>'
}];
var div = document.createElement('div');
div.innerHTML = arr[0].obj;
// var svg = div.querySelector('svg');
var svg = div.firstChild;
var x = svg.getAttribute('x');
var y = svg.getAttribute('y');
console.log(x, y);
像这样使用DOMParser:
var x = [ { id: 'WA...',
obj: '<svg data="BusinessProductFigure" x="484.171875" y="123" id="WA..." xmlns="http://www.w3.org/2000/svg" version="1.1"><rect x="4" y="4" width="60" height="14" fill="rgb(299,299,162)" stroke-linejoin="round" stroke="rgb(299,299,162)" stroke-width="1"/></svg>' } ]
var dom = new DOMParser().parseFromString(x[0].obj, 'image/svg+xml');
alert(dom.documentElement.getAttribute("x"));