在 js 里面 对象属性名字 带减号 怎么取

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在 js 里面 对象属性名字 带减号 怎么取相关的知识,希望对你有一定的参考价值。

在 js 里面
var a =
"a-b" : 'aabb'
;
alert(a['a-b']); // aabb

能不能用 点的形式 来取这个值
类似于 这样 alert(a.a-b);

是不能的了。

减号是运算符,如果a.a-b,此处会被当成a.a减去 b。
建议您把减号换成下划线即可。要不然,只能以a['a-b']的形式了。追问

就是说 像这种情况 只能用 数组的方式来取值了呗

php里 可以这样
$a->'a-b' = 'aabb';
在js里看来是不行了

追答

嗯,是的,不能的,呵

参考技术A var test='a-b':'your test a';
alert(test.a-b);//解析错误,JS会解析为test.a和b的差 显然,你没有定义test.a和b
alert(test['a-b']);//正确

var test='a':3,'a-b':'your test a-b';
var b=1;
alert(test.a-b);//输出 2
alert(test['a-b']);//输出 your test a-b

你那样不能主要是因为它会解析为 a.a和b的差,而不是a的a-b属性
有用请采纳~

js里怎么取session的值

当index.jsp页面 window.onload 的时候去读Action,在Action里面把一个数据存在了session里面,在Js函数里面要怎么取session的值

因为Session是保存在服务端的,js只能通过ajax读取Session。不过一般也不建议这么做,你可以把前端验证码输入的值传给后端,后端判断是否正确,返回是否正确就行了。因为你直接把验证码发给前端,这样就可以使用js得到验证码,并自动输入,就失去验证码的意义了。
JScript code
var id = \'<%=Session["UserName"] %>\';
混写就OK了。
参考技术A 用jstl里面的<C:OUT 标签吧,然后 var data='<c:out value="$你要取的数据"/>'; 这样就OK了,本回答被提问者采纳 参考技术B <%=session.getAttribute("name")%>

以上是关于在 js 里面 对象属性名字 带减号 怎么取的主要内容,如果未能解决你的问题,请参考以下文章

JAVA 如何获取modelandview的返回值,如果把一个对象放在map集合里(假如集合名字是

jquery或者JS怎么改class的名字

JS里面怎么获取当天日期

java实体的属性名怎么设置成 带.

JS 对象的三种创建方式

如何在html里显示出js里面变量的值?比如名字?