Как здесь исправить эту ошибку jslint? https://jsfiddle.net/cfv2g1ho/
[JSLint не удалось завершить] Ожидается идентификатор, а вместо этого отображается «0».
function onYouTubeIframeAPIReady() {
let playerVarsList = {
0: {
playerVars: {
playlist: "0dgNc5S8cLI,mnfmQe8Mv1g,-Xgi_way56U,CHahce95B1g"
}
},
1: {
playerVars: {
listType: "playlist",
list: "PLYeOyMz9C9kYmnPHfw5-ItOxYBiMG4amq"
}
}
}
//to add the player to all the play buttons
const totalP = document.querySelectorAll('[data-container = "play1"]').length;
//looping over all the play buttons and adding player to that
for (let i = 0; i < totalP; i++) {
players.add(".playSingle" + i, (playerVarsList[i] || {}));
}
players.add(".playInitial", {});
}
Вы можете изменить код с помощью любого текстового редактора. Кроме того, пожалуйста, добавьте все пояснения к вашему вопросу, отредактировав его.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


0 не является допустимым идентификатором, однако "0" является. Но вы обрабатываете свой объект как массив, так почему бы вам не использовать массив вместо объекта?
let playerVarsList = [
{
playerVars: {
playlist: "0dgNc5S8cLI,mnfmQe8Mv1g,-Xgi_way56U,CHahce95B1g"
}
},
{
playerVars: {
listType: "playlist",
list: "PLYeOyMz9C9kYmnPHfw5-ItOxYBiMG4amq"
}
}
]
Однако, если у вас есть причина абсолютно использовать объект:
let playerVarsList = {
"0": {
playerVars: {
playlist: "0dgNc5S8cLI,mnfmQe8Mv1g,-Xgi_way56U,CHahce95B1g"
}
},
"1": {
playerVars: {
listType: "playlist",
list: "PLYeOyMz9C9kYmnPHfw5-ItOxYBiMG4amq"
}
}
}
Будьте осторожны с использованием строгого режима при смешивании чисел и строк, например. playerVarsList[i] не будет работать, если включен строгий режим.
Используйте двойные кавычки, а не одинарные. Как именно мне это сделать здесь? totalPlayButtons = document.querySelectorAll('[data-container = "play1"]').length;
document.querySelectorAll(`[data-container = "play1"]`) или document.querySelectorAll("[data-container=\"play1\"]")Код сейчас не работает: playerVarsList[i] jsfiddle.net/aegkjpf1 Что делать?
for (let i = 0; i < totalP; i++)... totalP - это не число, это набор элементов DOM (как массив)... вы должны использовать totalP.length.
Если вы уже знаете, почему возникает эта ошибка, что мешает вам ее устранить?