数组路径辅助函数接受格式不正确的 RFC 6902 索引
作者: simonyang08创建于 2026年8月21日更新于 2026年8月21日
- 复制
数据={项目: ["a"、"b"、"c"];
得到ByPath( 数据, “/ items/1foo” ); // “ b” setByPath(数据,"/items/01","x"); //写出索引 1 添加 ByPath( 数据, “/ items/ 1. 5 ”) ; // 在索引 1 中插入 删除 ByPath( data, "/ items/ - 1" ) ; // 可能涉及非索引数组属性
状态存储路径设置器具有相同的解析行为.
预期行为
当当前容器是数组时,路径符号应该遵循 RFC 6902 阵列-索引语法:`0' 或非零位数后的数字. 部分数字字符串、引出零、小数、负值和无法安全表示的整数,应当予以拒绝,而不是用 " parseInt " 来胁迫。
对象成员名称应当保持不受限制,包括数字外观键.
建议的固定办法
仅在翻转数组时使用严格,安全的整数解析,保留对象键行为,并添加可变路径助手和状态存储写入的回归覆盖.
我有一个集中的补丁 准备回归测试.内容来源: vercel-labs/json-render