js问题,为什么这个里面必须是冒号而不是赋值“=”?

    var oj1 = {
                  a = 99
            }
            var oj2 = {
                  b = 33
            }
            var oj3 = {
                  c = 45,
                  d = ["hello","ok" , true]
            }

            Object.assign(oj1,oj2,oj3);
            console.log(oj1);

里面必须写成a:99    b:33   c:45  d:。。。。。才对;

写成等于不就是给他们赋值吗?为什么是错的?

1.你要给谁赋值,变量声明了吗?

2.这里是定义json传输格式数据,既然是一种格式,就不必在意能不能赋值了

{}括号这种是json格式 里边是键值对 

因为这是json格式。

看下js对象属性规则

数据类型为Object,当然要遵守对应语法

相关文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object

这个是对象形式的方式,里面是 键值对

额object对象必须为键值对,你=就等于 var a=9

我的理解是: 赋值用= 设置属性是:

json必须是键值对!!!json必须是键值对!!!json必须是键值对!!!json必须是键值对!!!json必须是键值对!!!json必须是键值对!!!json必须是键值对!!!

这没必要纠结吧,对象就是这样的格式呀,慢慢适应就好了