开发者

javascript/jquery error "invalid object initializer"

开发者 https://www.devze.com 2023-03-20 20:59 出处:网络
I\'m calling a function like this: myfunc($tab, {\'top-left\', \'bottom-left\'}, defaults.tabRounded);

I'm calling a function like this:

myfunc($tab, {'top-left', 'bottom-left'}, defaults.tabRounded);

The function definition is:

function myf开发者_开发技巧unc(obj, properties, value) {

Yet I get the error "Invalid object initializer". Is this because of the json argument? Or something else?


Replace

myfunc($tab, {'top-left', 'bottom-left'}, defaults.tabRounded);

With

myfunc($tab, ['top-left', 'bottom-left'], defaults.tabRounded);

{'top-left', 'bottom-left'} is not an object, but {'top-left': 0, 'bottom-left': 10} is an object. I assumed you might have wanted an array instead of an object.


JavaScript objects are key/value pairs:

{
    'top-left': 333,
    'bottom-left': 444
}

https://developer.mozilla.org/en/JavaScript/Guide/Working_with_Objects#Using_Object_Initializers


Probably you want to pass array, not object to the function:

myfunc($tab, ['top-left', 'bottom-left'], defaults.tabRounded);

Otherwise if you want to pass object you need to specify values for the keys. Something like:

myfunc($tab, {'top-left': 100, 'bottom-left': 100}, defaults.tabRounded);


You need to name the properties like { x: 'foo', y: 'bar' }, as these are always key-value pairs.

0

精彩评论

暂无评论...
验证码 换一张
取 消