Bug Tracker

Opened 6 years ago

Closed 5 years ago

#10463 closed enhancement (patchwelcome)

RemoveAttr should check if attribute exist (when it's possible) before remove it

Reported by: markel Owned by: markel
Priority: low Milestone: None
Component: attributes Version: 1.7b1
Keywords: Cc:
Blocked by: Blocking:

Description

You already have similar behavior in removeClass method, without it you would got something like this -- http://jsperf.com/removeclass-without-check-for-classname-attr

Of course in removeClass that check needed for other reasons too, but in some cases it will improve performance for removeAttr.

Fast -- http://jsperf.com/removeattr-with-check-for-attr

Less faster -- http://jsperf.com/removeattr-with-check-for-attr-2

Equally fast or little bit slower -- http://jsperf.com/removeattr-with-check-for-attr-3

Pull request -- https://github.com/jquery/jquery/pull/538

Change History (6)

comment:1 Changed 6 years ago by Rick Waldron

Component: unfiledattributes
Owner: set to markel
Priority: undecidedlow
Status: newpending

Those perfs are bogus because the attribute doesn't exist after the first removal.

Version 0, edited 6 years ago by Rick Waldron (next)

comment:2 Changed 6 years ago by markel

Status: pendingnew

First show how speed will improve without attributes, is no need for attribute to exist -- its hole point Second shows if one attribute exist and another is not, its add only one attribute every time Third remove and immediately add the same attribute, so every time its will remove attribute

Please look more closely, they not bogus.

comment:3 in reply to:  2 Changed 6 years ago by Rick Waldron

I think you missed my edit...

Replying to markel:

First show how speed will improve without attributes, is no need for attribute to exist -- its hole point Second shows if one attribute exist and another is not, its add only one attribute every time Third remove and immediately add the same attribute, so every time its will remove attribute

Please look more closely, they not bogus.

comment:4 Changed 6 years ago by markel

yeah, i see now

comment:5 Changed 6 years ago by timmywil

Status: newopen

comment:6 Changed 5 years ago by dmethvin

Resolution: patchwelcome
Status: openclosed

They both seem fast enough, but if you want to resurrect this submit let us know and we can discuss for 1.9.

Note: See TracTickets for help on using tickets.