js对象动态设置属性名

在js中有两种方式访问一个对象的内容
1、通过点表示法

const student = {
	name: '张三',
	age:  18,
	action: function eat () {alert('我喜欢吃')}
}

// 点表示法
student[name];
student[age];
student.action();	// 注:这里加括号说明是要调用,如果不加括号会直接打印出eat方法

2、括号表示法
这种方式类似于数组的写法

const student = {
	name: '张三',
	age:  18,
	action: function eat () {alert('我喜欢吃')}
}

// 括号表示法(属性值要加引号)
student['name'];
student['age'];
student['action']();	// 调用方法需要在外面加括号

另:这种方法个优点:
我们想把传递过来的数据当做对象字面量的属性名可以用括号表示法,所以括号表示发可以动态的添加属性名和内容。

<input type="text" value="address">
		
<script>
	const student ={};
	let ipt = document.querySelector('input');
	let a= ipt.value;
	
	// 用点表示法不能将输入框中的值当做属性名来设置
	student.a = '北京';	// 存入的是a: '北京'
	// 用括号表示法可以
	student[a] = '北京'; // 存入的是	address: '北京'
	// ↑动态的将输入框中的内容作为这个对象的值
</script>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值