diff --git a/coretool.js b/coretool.js index 007d7a4..d5791bf 100644 --- a/coretool.js +++ b/coretool.js @@ -236,8 +236,8 @@ module.exports = { }, read_varchain (path, root) { - var parent = root || globalThis || global || window || {} - var names = path.split('.') + let parent = root || globalThis || global || window || {} + let names = path.split('.') for (var i in names) { if (typeof parent === 'object' && names[i].match(/^\w+\(\)$/) && typeof parent[names[i].substring(0, names[i].length - 2)] === 'function') { // 支持 xxx.myfunc().yyy 的函数形式作为一个路径节点。 @@ -245,10 +245,13 @@ module.exports = { } else if (typeof parent === 'object' && names[i].match(/^\w+$/) && typeof parent[names[i]] != 'undefined' && parent[names[i]] != null) { parent = parent[names[i]] } else { - return null + return undefined } } - return parent === null || parent === undefined ? null : parent + if (parent === null || parent === undefined || isNaN(parent) || typeof parent === 'number') { + return undefined + } + return parent }, set_varchain (path, root, value) {