You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中如何向API发送带连字符的请求参数

问题原因

JavaScript 中使用点操作符访问、赋值对象属性时,要求属性名符合标识符命名规范:仅可包含字母、数字、下划线、$ 符号,不可包含特殊符号、不可用数字开头。你用到的属性名 Last-Name 包含连字符-,不符合规范,因此点操作符写法会触发语法错误。

正确解决方法

使用方括号语法包裹带特殊字符的属性名字符串即可,具体修改如下:

1. 赋值代码修改

inputArray.data.firstName = firstName;
inputArray.data.secondOne = secondOne;
inputArray.data.Third = Third;
// 带连字符的属性使用方括号语法,属性名用引号包裹为字符串格式
inputArray.data['Last-Name'] = lastName;

2. 对象定义补充说明

如果你的初始inputArray定义时没有给带连字符的属性名加引号,也会触发语法错误,正确的定义写法如下:

var inputArray = {
    ...inputArray,
    data:{
        ...inputArray.data,
        firstName:'',
        secondOne:'',
        Third:'',
        // 带连字符的属性名定义时也需要用引号包裹
        'Last-Name':'',               
    }
};

修改完成后序列化inputArray提交给API,生成的JSON结构会正常携带Last-Name字段,完全符合入参要求。


内容的提问来源于stack exchange,提问作者John Ken

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 07:57:03