租房小程序前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
536 B

6 months ago
  1. 'use strict';
  2. var result = require('./')();
  3. var test = {
  4. __proto__: null,
  5. foo: {}
  6. };
  7. var setter = require('./helpers/setDunder');
  8. /** @type {import('./mutator')} */
  9. module.exports = function hasMutator() {
  10. if (!result) {
  11. return false;
  12. }
  13. var obj = { __proto__: test };
  14. // @ts-expect-error: TS errors on an inherited property for some reason
  15. if (obj.foo !== test.foo) {
  16. return false;
  17. }
  18. if (!setter) {
  19. return false;
  20. }
  21. setter(obj, null);
  22. if ('foo' in obj || 'toString' in obj) {
  23. return false;
  24. }
  25. return true;
  26. };