Javascript js如何破坏函数的默认值?

Javascript js如何破坏函数的默认值?,javascript,ecmascript-6,Javascript,Ecmascript 6,我有以下代码: 函数houseDescriptor([houseColor='green',shutterColors=['red']]]=[])){ 控制台。原木(室内颜色、百叶窗颜色); } 房屋描述符(“nbh”)字符串被视为可编辑的,而数字则不是。它对字符串进行基于索引的解构,这就是为什么只打印n和b 上述函数接受一个数组类型的参数。因此,当您将'nbh'作为参数传递时,它将视为iterable并对其执行解构 上述代码相当于 let[firstCharacter,secondCha

我有以下代码:

函数houseDescriptor([houseColor='green',shutterColors=['red']]]=[])){
控制台。原木(室内颜色、百叶窗颜色);
}

房屋描述符(“nbh”)字符串被视为可编辑的,而数字则不是。它对字符串进行基于索引的解构,这就是为什么只打印n和b

上述函数接受一个数组类型的参数。因此,当您将'nbh'作为参数传递时,它将视为iterable并对其执行解构

上述代码相当于

let[firstCharacter,secondCharacter]=“Stack”;

log(`firstCharacter:${firstCharacter},secondCharacter:${secondCharacter}')
字符串是一个iterable,它由数组分解;控制台日志(a、b、c).Iterable,而不是数组。
function houseDescriptor([houseColor = 'green', shutterColors = ['red']] = [])