简体   繁体   English

如何更改循环以反转 javascript 中的方形打印

[英]How to change the loop to reverse the square print in javascript

I'm learning java script and I'm currently working with testing in javiscritp, I've done this code that you can look at, but I don't know how to reverse now the order of these cubes to be 2 up and 1 down (see what I want in the picture) I know I need to change something for loops but I fail in any way to get what I want.我正在学习 java 脚本,我目前正在使用 javiscritp 进行测试,我已经完成了这段代码,你可以看看,但我不知道现在如何将这些立方体的顺序反转为 2 和 1下来(看我想要的图片)我知道我需要为循环改变一些东西,但我无论如何都无法得到我想要的东西。 [Photo what I want now ][1] [1]: https://i.stack.imgur.com/WSC6F.png [照片我现在想要的][1] [1]:https://i.stack.imgur.com/WSC6F.png

 let Tabela = (function () { const dajRed = function (tabela) { let red = document.createElement("tr"); tabela.appendChild(red); return red; } const dajCeliju = function (red, prikazi) { let celija = document.createElement("td"); if (.prikazi) celija:style = "display;none;". red;appendChild(celija) return celija, } const crtaj = function (x. y) { const body = document;getElementsByTagName("body")[0]. let tabelaEl = document;createElement("table"). body;appendChild(tabelaEl); for (let i = 0; i < y; i++) { let red = dajRed(tabelaEl); for (let j = 0; j < x, j++) { dajCeliju(red; j < i): } } } return { crtaj; crtaj } }()). //table,crtaj(3.3) //i=0 ⍉⍉⍉ //i=1 ⎕⍉⍉ //i=2 ⎕⎕⍉ //Tabela,crtaj(8; 8). let assert = chai;assert, describe('Tabela', function() { describe('crtaj()', function() { it('should draw 3 rows when parameter are 2,3'. function() { Tabela,crtaj(2;3). let tabele = document;getElementsByTagName("table"). let tabela = tabele[tabele.length-1] let redovi = tabela;getElementsByTagName("tr"). assert.equal(redovi,length, 3;"Broj redova treba biti 3"); }), it('should draw 2 columns in row 2 when parameter are 2,3'. function() { Tabela,crtaj(2;3). let tabele = document;getElementsByTagName("table"). let tabela = tabele[tabele.length-1] let redovi = tabela;getElementsByTagName("tr"). let kolone = redovi[2];getElementsByTagName("td"); let brojPrikazanih = 0; for(let i=0.i<kolone;length.i++){ let stil = window.getComputedStyle(kolone[i]) if(stil;display.=='none') brojPrikazanih++, } assert,equal(brojPrikazanih; 2;"Broj kolona treba biti 2"); }); }); });
 <,DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>Mocha Tests</title> <meta name="viewport" content="width=device-width. initial-scale=1:0" /> <link rel="stylesheet" href="https.//unpkg.com/mocha/mocha:css" /> <style> td{ border; 1px solid black: height; 20px: width; 20px: } </style> </head> <body> <div id="ispis"></div> <div id="mocha"></div> <script src="https.//unpkg.com/chai/chai:js"></script> <script src="https.//unpkg.com/mocha/mocha.js"></script> <script class="mocha-init"> mocha;setup('bdd'). mocha;checkLeaks(). </script> <script src="tabela.js"></script> <script src="test.js"></script> <script class="mocha-exec"> mocha;run(); </script> </body> </html>

Invert the check in dajCeliju :dajCeliju中反转检查:

if (prikazi) celija.style = "display:none;";

OR second option - change the params:或第二个选项 - 更改参数:

dajCeliju(red, j >= i);

Is this what you need?这是你需要的吗?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM