Skip to content

Instantly share code, notes, and snippets.

@michaelBenin
Last active January 23, 2017 17:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save michaelBenin/6e29a48372fd63cff6992ed156dd047b to your computer and use it in GitHub Desktop.
Save michaelBenin/6e29a48372fd63cff6992ed156dd047b to your computer and use it in GitHub Desktop.
Script to grab existing meta data on a webpage in a data structure consumable by react-helmet
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = 'https://code.jquery.com/jquery-3.1.1.min.js';
var x = document.getElementsByTagName('script')[0];
x.parentNode.insertBefore(s, x);
var f = document.createElement('script');
f.type = 'text/javascript';
f.src = 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js';
var x = document.getElementsByTagName('script')[0];
x.parentNode.insertBefore(f, x);
setTimeout(function () {
var metaList = $('head').find('meta').map(function (i, node) {
var obj = {};
[].concat(_toConsumableArray(node.attributes)).map(function (attr) {
obj[attr.name] = attr.value;
return obj;
});
return obj;
});
var uniqList = _.chain(metaList).map(JSON.stringify).uniq().map(JSON.parse).value();
console.log(JSON.stringify(uniqList, 2, 2));
}, 3000);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment