在脚本中
我无法从对象中获取值。
打印整个对象时正在打印。但是,当我尝试仅访问1个字段时,它显示错误
function add_new_row()
{
let gg =
{
"1st_col" : '99',
"2nd_col" : '88',
"3rd_col" : ['77', '66'],
"4th_col" : '55',
}
console.log(gg); //{1st_col: "99", 2nd_col: "88", 3rd_col: Array(2), 4th_col: "55"}
console.log(gg.1st_col); //Error here
//this is the line where I called this function in button HTML
}
引发的错误是:
Uncaught ReferenceError: add_new_row is not defined
at HTMLInputElement.onclick (index2.html:120)
onclick @ index2.html:120
答案 0 :(得分:2)
如果字段名称以数字开头,则无法通过点表示法进行访问。这是在vars命名的javascript编译器的词法分析中定义的约定规则。
这是有效的:
gg.first_col
gg._1st_col
gg.a1st_col
如果您使用方括号表示法,则以这种方式引用这些字段是有效的:
gg["1st_col"]
---编辑---
这些是在javascript中定义变量名称的基本规则: