{"action":"opened","issue":{"url":"https://api.github.com/repos/openlayers/ol3/issues/3188","labels_url":"https://api.github.com/repos/openlayers/ol3/issues/3188/labels{/name}","comments_url":"https://api.github.com/repos/openlayers/ol3/issues/3188/comments","events_url":"https://api.github.com/repos/openlayers/ol3/issues/3188/events","html_url":"https://github.com/openlayers/ol3/issues/3188","id":55797817,"number":3188,"title":"ol.Object property fires change when new and old value are the same","user":{"login":"Threxxy","id":4375326,"avatar_url":"https://avatars.githubusercontent.com/u/4375326?v=3","gravatar_id":"","url":"https://api.github.com/users/Threxxy","html_url":"https://github.com/Threxxy","followers_url":"https://api.github.com/users/Threxxy/followers","following_url":"https://api.github.com/users/Threxxy/following{/other_user}","gists_url":"https://api.github.com/users/Threxxy/gists{/gist_id}","starred_url":"https://api.github.com/users/Threxxy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Threxxy/subscriptions","organizations_url":"https://api.github.com/users/Threxxy/orgs","repos_url":"https://api.github.com/users/Threxxy/repos","events_url":"https://api.github.com/users/Threxxy/events{/privacy}","received_events_url":"https://api.github.com/users/Threxxy/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-01-28T18:47:23Z","updated_at":"2015-01-28T18:47:23Z","closed_at":null,"body":"Hi guys, fantastic work on OL3.\r\n\r\nIt seems a property of ol.Object will fire a change event even if the value hasn't changed.  Fiddle [here](http://jsfiddle.net/1kjeLo8k/2/) and basic example below:\r\n\r\n```javascript\r\n//Create observable kitten object with cuteness of 90\r\nvar kitten = new ol.Object({cuteness: 90});\r\n\r\n//log the old and new value when cuteness is changed\r\nkitten.on(\r\n    'change:cuteness',\r\n    function(evt) {\r\n        console.log(evt.oldValue + ' set to ' + evt.target.get('cuteness'));\r\n    }\r\n);\r\n\r\n//test\r\nkitten.set('cuteness', 45); //console: 90 set to 45\r\nkitten.set('cuteness', 45); //console: 45 set to 45\r\nkitten.set('cuteness', 45); //console: 45 set to 45\r\n```"}}