array-bracket-spacing
多くのスタイルガイドでは、配列ブラケットと他のトークンの間にスペースを入れるか入れないかを規定しています。このルールは、配列リテラルと分割代入(ECMAScript 6)の両方に適用されます。
/*eslint-env es6*/
var arr = [ 'foo', 'bar' ];
var [ x, y ] = z;
var arr = ['foo', 'bar'];
var [x,y] = z;
ルールの詳細
このルールは、配列ブラケット内の間隔の整合性を強制します。
オプション
このルールには文字列オプションがあります
"never"
(デフォルト) は配列ブラケット内のスペースを許可しません"always"
は配列ブラケット内に1つ以上のスペースまたは改行を必須とします
このルールには、"never"
オプションの例外のためのオブジェクトオプションがあります
"singleValue": true
は、単一の要素を含む配列リテラルのブラケット内に1つ以上のスペースまたは改行を必須とします"objectsInArrays": true
は、配列リテラルのブラケットと、そのオブジェクトリテラル要素の波括弧[ {
または} ]
の間に1つ以上のスペースまたは改行を必須とします"arraysInArrays": true
は、配列リテラルのブラケットと、その配列リテラル要素のブラケット[ [
または] ]
の間に1つ以上のスペースまたは改行を必須とします
このルールには、"always"
オプションの例外のためのオブジェクトオプションがあります
"singleValue": false
は、単一の要素を含む配列リテラルのブラケット内のスペースを許可しません"objectsInArrays": false
は、配列リテラルのブラケットと、そのオブジェクトリテラル要素の波括弧[{
または}]
の間のスペースを許可しません"arraysInArrays": false
は、配列リテラルのブラケットと、その配列リテラル要素のブラケット[[
または]]
の間のスペースを許可しません
このルールには組み込みの例外があります
"never"
(および"always"
オプションの例外) は、配列ブラケット内の改行を許可します。これは一般的なパターンであるためです"always"
は、空の配列リテラル[]
内にスペースまたは改行を必須としません
never
デフォルトの "never"
オプションでこのルールに違反するコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "never"]*/
/*eslint-env es6*/
var arr = [ 'foo', 'bar' ];
var arr = ['foo', 'bar' ];
var arr = [ ['foo'], 'bar'];
var arr = [[ 'foo' ], 'bar'];
var arr = [ 'foo',
'bar'
];
var [ x, y ] = z;
var [ x,y ] = z;
var [ x, ...y ] = z;
var [ ,,x, ] = z;
デフォルトの "never"
オプションでこのルールに従うコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "never"]*/
/*eslint-env es6*/
var arr = [];
var arr = ['foo', 'bar', 'baz'];
var arr = [['foo'], 'bar', 'baz'];
var arr = [
'foo',
'bar',
'baz'
];
var arr = ['foo',
'bar'
];
var arr = [
'foo',
'bar'];
var [x, y] = z;
var [x,y] = z;
var [x, ...y] = z;
var [,,x,] = z;
always
"always"
オプションでこのルールに違反するコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always"]*/
/*eslint-env es6*/
var arr = ['foo', 'bar'];
var arr = ['foo', 'bar' ];
var arr = [ ['foo'], 'bar' ];
var arr = ['foo',
'bar'
];
var arr = [
'foo',
'bar'];
var [x, y] = z;
var [x,y] = z;
var [x, ...y] = z;
var [,,x,] = z;
"always"
オプションでこのルールに従うコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always"]*/
/*eslint-env es6*/
var arr = [];
var arr = [ 'foo', 'bar', 'baz' ];
var arr = [ [ 'foo' ], 'bar', 'baz' ];
var arr = [ 'foo',
'bar'
];
var arr = [
'foo',
'bar' ];
var arr = [
'foo',
'bar',
'baz'
];
var [ x, y ] = z;
var [ x,y ] = z;
var [ x, ...y ] = z;
var [ ,,x, ] = z;
singleValue
"always", { "singleValue": false }
オプションでこのルールに違反するコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always", { "singleValue": false }]*/
var foo = [ 'foo' ];
var foo = [ 'foo'];
var foo = ['foo' ];
var foo = [ 1 ];
var foo = [ 1];
var foo = [1 ];
var foo = [ [ 1, 2 ] ];
var foo = [ { 'foo': 'bar' } ];
"always", { "singleValue": false }
オプションでこのルールに従うコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always", { "singleValue": false }]*/
var foo = ['foo'];
var foo = [1];
var foo = [[ 1, 1 ]];
var foo = [{ 'foo': 'bar' }];
objectsInArrays
"always", { "objectsInArrays": false }
オプションでこのルールに違反するコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always", { "objectsInArrays": false }]*/
var arr = [ { 'foo': 'bar' } ];
var arr = [ {
'foo': 'bar'
} ]
"always", { "objectsInArrays": false }
オプションでこのルールに従うコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always", { "objectsInArrays": false }]*/
var arr = [{ 'foo': 'bar' }];
var arr = [{
'foo': 'bar'
}];
arraysInArrays
"always", { "arraysInArrays": false }
オプションでこのルールに違反するコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always", { "arraysInArrays": false }]*/
var arr = [ [ 1, 2 ], 2, 3, 4 ];
var arr = [ [ 1, 2 ], 2, [ 3, 4 ] ];
"always", { "arraysInArrays": false }
オプションでこのルールに従うコードの例
/*eslint @stylistic/js/array-bracket-spacing: ["error", "always", { "arraysInArrays": false }]*/
var arr = [[ 1, 2 ], 2, 3, 4 ];
var arr = [[ 1, 2 ], 2, [ 3, 4 ]];
使用しない場合
配列ブラケットの間隔の整合性を気にしない場合は、このルールを無効にすることができます。