SOURCE

let flowerbed = [0,1,0];
var canPlaceFlowers = function(flowerbed, n) {
    let sum = 0; // 花园中能存放花的最大数量
    let index = - 2; // 当前1所在的数组中的索引 初始值设为-2的原因是 当数组第一个元素为0能置1时其前后位都得不为1,故-1位置不能设为1的起始位 要设置-2为1的起始位才行
    for(let i = 0; i < flowerbed.length; i++) {
        if (flowerbed[i] == 1) {
            let curr1 = parseInt((i - index) / 2) - 1; // parseInt() 丢弃小数部分取整数部分
            sum += curr1 < 0 ? 0 : curr1;
            index = i;
        }
    }
  let curr2 = parseInt((flowerbed.length + 1 - index) / 2) - 1;  // 当数组末尾还有一大部分的连续0出现时 需要将末尾能放置1的位置数一同加上 注意此处flowerbed.length + 1的原因与index初始值设为-2原因类似
    sum += curr2 < 0 ? 0 : curr2;
    return sum >= n ? true : false;
};
console.log(canPlaceFlowers(flowerbed, 1));
console 命令行工具 X clear

                    
>
console