La lista de nombres es supuestamente la siguiente:
Rosa : 35621548
gato : 32658495
Lita : 63259547
Set : 27956431
Cathy: 75821456
Dado que tiene una variable como StudentCode que contiene la lista anterior (¡creo que const servirá! Me gusta:
const StudentCode = { [Jack]: [32658495], [Rose]: [35621548], [Lita]: [63259547], [Seth]: [27956431], [Cathy]:[75821456], };) Así que aquí están las preguntas:
Primero: ¿Cómo puedo definirlos en la URL a continuación: https://www.mylist.com/student=?StudentCode Entonces, el enlace, por ejemplo, para Jack será: https://www.mylist.com/student=?32658495 El La URL es imaginaria. No haga clic en él por favor.
2do: Por cierto, la lista general supera las 800 personas y planeo guardar un archivo .js externo para llamarlo dentro del código actual. Así que cuéntame sobre eso también. Un millón de gracias
Dado
const StudentCode = { "Jack": "32658495", "Rose": "35621548", "Lita": "63259547", "Seth": "27956431", "Cathy": "75821456", };Puede construir direcciones URL como:
const urls = Object.values(StudentCode).map((c) => `https://www.mylist.com?student=${c}`) // urls: ['https://www.mylist.com?student=32658495', 'https://www.mylist.com?student=35621548', 'https://www.mylist.com?student=63259547', 'https://www.mylist.com?student=27956431', 'https://www.mylist.com?student=75821456']Para obtener la URL de un estudiante específico, simplemente haga lo siguiente:
const url = `https://www.mylist.com?student=${StudentCode["Jack"]}` // url: 'https://www.mylist.com?student=32658495'No estoy seguro de entender su segunda pregunta: 800 es un número bastante bajo, por lo que no habrá problemas de rendimiento si eso es lo que está preguntando.
Las propiedades del objeto (después de eliminar la coma final) se pueden recorrer mediante un bucle for-in (ver: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements /para...en )
Esto da referencias a cada clave de la matriz y se puede hacer referencia al valor contenido en esa clave usando objectName[key] . Por lo tanto, recorrerá su objeto usando algo como:
for (key in StudentCode) { keyString = key; // eg = "Jack" keyValue = StudentCode[key]; // eg = 32658495 // build the urls and links }para construir las direcciones URL, los literales de plantilla de cadena simplificarán el proceso (ver: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals ) permitiéndole sustituir valores en su cadena. p.ej:
url = `https://www.mylist.com/student=?${StudentCode[key]`} Tenga en cuenta el uso de tildes de retroceso y ${} para las sustituciones.
Por último, para crear enlaces activos, cree un elemento y establezca su propiedad innerHTML en el marcado creado utilizando más literales de plantilla de cadena:
let link = `<a href=${url}>${keyValue}</a>`Estos pasos se combinan en el fragmento de trabajo aquí:
const StudentCode = { Jack: 32658495, Rose: 35621548, Lita: 63259547, Seth: 27956431, Cathy: 75821456, }; const studentLinks = []; for (key in StudentCode) { let url = `https://www.mylist.com/student=?${StudentCode[key]}`; console.log(url); studentLinks.push(`<a href href="url">${key}</a>`) } let output= document.createElement('div'); output.innerHTML = studentLinks.join("<br>"); document.body.appendChild(output);