前端项目实战96-属性值处理
console.log(splitKey[0],"[splitKey[0]") if (result[splitKey[0]] === undefined) { // first operator for the key, we add it to the dict result[splitKey[0]] = op; // console.log(1111) // console.log(result[splitKey[0]],"result") }
输出
is_delete
code
name
Object.keys(filter).forEach(function (key) { // key: the name of the object key //属性按照@分割 const splitKey = key.split('@'); //如果长度为2 取出数组的属性值 const operation = splitKey.length == 2 ? splitKey[1] : defaultListOp; let values; //如果包含like这个属性 拉取到当前的值 拿取到对应的属性的key值 if (operation.includes('like')) { values = filter[key].trim().split(' '); } else { values = [filter[key]]; } values.forEach((value: any) => { //进行拼接 // if operator is intentionally blank, rpc syntax let op = operation.includes('like') ? `${operation}.*${value}*` : operation.length == 0 ? `${value}` : `${operation}.${value}`; if (result[splitKey[0]] === undefined) { // first operator for the key, we add it to the dict result[splitKey[0]] = op; } else { if (!Array.isArray(result[splitKey[0]])) { // second operator, we transform to an array console.log(1111) result[splitKey[0]] = [result[splitKey[0]], op] } else { // third and subsequent, we add to array result[splitKey[0]].push(op); } } }); });
输入
{
"is_delete": 0,
"code@like": "12312",
"name@like": "我是测试"
}
输出
{
"is_delete": "eq.0",
"code": "like.*12312*",
"name": "like.*我是测试*"
}
分类:
前端项目实战-2022-学习
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南