JavaScript Symbol.isConcatSpreadable is a well-known symbol used to configure if a given object should be flattened to its array elements while using the Array.prototype.concat() method.
Syntax:
Array[Symbol.isConcatSpreadable]
Here Array is the array object which is to be flattened to its array elements.
Parameters: This symbol does not accept any parameter.
Return value: This symbol does not return any value.
Example 1: In this example, we will use isConcatSpreadable Property
javascript
// Creating some arrays const Array1 = [1, 2, 3]; const Array2 = [4, 5, 6]; // Calling concat() function let Array3 = Array1.concat(Array2); // Printing the concatenated array console.log(Array3); // Calling Symbol.isConcatSpreadable symbol Array2[Symbol.isConcatSpreadable] = false ; Array3 = Array1.concat(Array2); // Printing the concatenated array // after calling of Symbol.isConcatSpreadable symbol console.log(Array3); |
[ 1, 2, 3, 4, 5, 6 ] [ 1, 2, 3, [ 4, 5, 6, [Symbol(Symbol.isConcatSpreadable)]: false ] ]
Example 2: In this example, we will use isConcatSpreadable Property
javascript
// Creating some arrays const Array1 = [1, 2, 3]; const Array2 = [4, 5, 6]; // Calling concat() function let Array3 = Array1.concat(Array2); // Printing the concatenated array console.log(Array3); // Calling Symbol.isConcatSpreadable symbol Array2[Symbol.isConcatSpreadable] = true ; Array3 = Array1.concat(Array2); // Printing the concatenated array // after calling of Symbol.isConcatSpreadable symbol console.log(Array3); |
[ 1, 2, 3, 4, 5, 6 ] [ 1, 2, 3, 4, 5, 6 ]
Supported Browsers:
- Google Chrome 48 and above
- Firefox 48 and above
- Edge 15 and above
- Opera 35 and above
- Apple Safari 10 and above