实现一个$attr(property,value)遍历,属性名为name,值为value的元素集合

  1. function $attr(property,value) {
  2. let elements = document.getElementsByTagName("*"),
  3. res = [];
  4. [].forEach.call(elements,item => {
  5. let itemValue = item.getAttribute(property)
  6. if(property === 'class') {
  7. new RegExp("\\b"+value+"\\b").test(itemValue) ? res.push(item) : null;
  8. }
  9. else if(itemValue === value) {
  10. res.push(item);
  11. }
  12. })
  13. return res;
  14. }