123456789101112131415161718192021222324252627282930313233 |
- "use strict";
- const {
- SAFE_IDENTIFIER,
- RESERVED_IDENTIFIER
- } = require("../util/propertyName");
- const propertyAccess = (properties, start = 0) => {
- let str = "";
- for (let i = start; i < properties.length; i++) {
- const p = properties[i];
- if (`${+p}` === p) {
- str += `[${p}]`;
- } else if (SAFE_IDENTIFIER.test(p) && !RESERVED_IDENTIFIER.has(p)) {
- str += `.${p}`;
- } else {
- str += `[${JSON.stringify(p)}]`;
- }
- }
- return str;
- };
- module.exports = propertyAccess;
|