Các tình nguyện viên của chúng tôi chưa dịch bài viết này thành Tiếng Việt. Tham gia với chúng tôi và hoàn thành công việc!
Bạn cũng có thể đọc bài viết trongEnglish (US).

Message

SyntaxError: Expected ':' (Edge)
SyntaxError: missing : after property id (Firefox)

Error type

SyntaxError

What went wrong?

When creating objects with the object initializer syntax, a colon (:) separates keys and values for the object's properties.

var obj = { propertyKey: 'value' };

Examples

Colons vs. equal signs

This code fails, as the equal sign can't be used this way in this object initializer syntax.

var obj = { propertyKey = 'value' };
// SyntaxError: missing : after property id

Correct would be to use a colon, or to use square brackets to assign a new property after the object has been created already.

var obj = { propertyKey: 'value' };

// or alternatively

var obj = { };
obj['propertyKey'] = 'value';

Empty properties

You can't create empty properties like this:

var obj = { propertyKey; };
// SyntaxError: missing : after property id

If you need to define a property without a value, you might use null as a value.

var obj = { propertyKey: null };

Computed properties

If you create a property key from an expression, you need to use square brackets. Otherwise the property name can't be computed:

var obj = { 'b'+'ar': 'foo' };
// SyntaxError: missing : after property id

Put the expression in brackets []:

var obj = { ['b'+'ar']: 'foo' };

See also

Document Tags and Contributors

Những người đóng góp cho trang này: mdnwebdocs-bot, PatrickKettner, Logiiiin, fscholz
Cập nhật lần cuối bởi: mdnwebdocs-bot,