123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308 |
- // html tree
- // <body>
- // <div>
- // <span>Enter a data please:</span><br/>
- // <input type='text' id='name'>
- // <input type='text' id='surname'>
- // </div>
- // <div>
- // <button id='ok'>OK</button>
- // <button id='cancel'>Cancel</button>
- // </div>
- // </body>
- // Сделайте декларативную JSON-структуру для тэгов выше, в которой:
- // каждый тэг будет объектом
- // имя тэга будет полем tagName
- // вложенные тэги будут в поле subTags
- // текст в тэге будет в поле text
- // набор аттрибутов тэга будет в поле attrs.
- // Выведите значения текста во второй кнопке, используя . и [].
- // Выведите значение атрибута id во втором input, используя . и [].
- // let body={
- // tagName:'body',
- // paired:true,
- // subTags:[
- // {tagName:'div',
- // paired:true,
- // subTags:[
- // {
- // tagName:'br',
- // paired:false,
- // },
- // {
- // tagName:'span',
- // paired:true,
- // content:"Enter a data please:",
- // },
- // {
- // tagName:'input',
- // paired:false,
- // attrs:{
- // id:'name',
- // type:'text',
- // }
- // },
- // {
- // tagName:'input',
- // paired:false,
- // attrs:{
- // id:'surname',
- // type:'text',
- // }
- // },
- // ]
- // },
- // {
- // tagName:'div',
- // paired:true,
- // subTags:[
- // {
- // tagName:'button',
- // content:"Ok",
- // paired:true,
- // attrs:{
- // id:'ok',
- // }
- // },
- // {
- // tagName:'button',
- // content:"Cancel",
- // paired:true,
- // attrs:{
- // id:'cancel',
- // }
- // },
- // ]
- // }
- // ]
- // }
- // alert(body.subTags[1].subTags[1].content)
- // alert(body.subTags[0].subTags[3].attrs.id)
- // declarative fields
-
- // var notebook = {
- // brand: prompt('enter brand for ex. HP'),
- // type: prompt('enter type for ex. 440 g4'),
- // model: prompt('enter model for ex. Y7Z75EA'),
- // ram: +prompt('enter ram im gb'),
- // size: +prompt('enter screen size in "'),
- // weight: +prompt('enter weight im kg'),
- // resolution: {
- // width: +prompt('enter resolution'),
- // height: +prompt('enter resolution'),
- // },
- // };
- // var phone = {
- // brand: prompt('enter phone brand'),
- // model: prompt('enter phone model'),
- // ram: +prompt('enter ram in gb'),
- // color: prompt('enter color'),
- // };
- // var person = {
- // name: prompt('enter name'),
- // surname: prompt('enter surname'),
- // married: confirm('married?'),
- // }
- // // object links
- // var notebook = {
- // brand: prompt('enter brand for ex. HP'),
- // type: prompt('enter type for ex. 440 g4'),
- // model: prompt('enter model for ex. Y7Z75EA'),
- // ram: +prompt('enter ram im gb'),
- // size: +prompt('enter screen size in "'),
- // weight: +prompt('enter weight im kg'),
- // resolution: {
- // width: +prompt('enter resolution'),
- // height: +prompt('enter resolution'),
- // },
- // };
- // var phone = {
- // brand: prompt('enter phone brand'),
- // model: prompt('enter phone model'),
- // ram: +prompt('enter ram in gb'),
- // color: prompt('enter color'),
- // };
- // var person = {
- // name: prompt('enter name'),
- // surname: prompt('enter surname'),
- // married: confirm('married?'),
- // }
- // person.smartphone = phone;
- // person.laptop = notebook;
- // notebook.owner = person;
- // phone.owner = person;
- // // imperative array fill 3
- // let arrayfill = []
- // arrayfill[0] = prompt('enter something')
- // arrayfill[1] = prompt('enter something')
- // arrayfill[2] = prompt('enter something')
- // // // while confirm
- // // Сделайте цикл с confirm, который продолжается по Отмена и заканчивается по ОК.
- // do {
- // var whileConfirm = confirm("yes-no?");
- // } while (whileConfirm === false);
- // // array fill
- // // Создайте пустой массив и добавляйте в него элементы, пока пользователь не нажмет Отмена в очередном prompt. Используйте push для удобства: push
- // let b = []
- // let a = '';
- // do {
- // a = prompt('enter');
- // b.push(a);
- // } while (a != null)
- // // array fill nopush
- // // Сделайте предыдущее задание, не используя push, а обращаясь к элементам по индексу.
- // let b = []
- // let a = '';
- // let i = 0;
- // do {
- // a = prompt('enter');
- // b[i++] = a
- // } while (a != null)
- // alert (b);
- // infinite probability
- // Создайте бесконечный цикл, который прерывается с помощью конструкции break, когда Math.random() > 0.9. Код должен подсчитывать количество итераций и вывести это число с помощью alert.
- // let i = 0;
- // while (true) {
- // let inf = Math.random();
- // i++;
- // if (inf > 0.9) {
- // alert('Количество итераций: '+i);
- // break;
- // }
- // }
- // empty loop
- // // Сделайте цикл с prompt, который прерывается по нажатию OK и продолжается по нажатию "Отмена" c пустым телом цикла.
- // do {
- // var whileConfirm = prompt("ok- STOP cancel - GO ");
- // } while (whileConfirm === null);
- // progression sum
- // Подсчитать сумму арифметической прогрессии от 1 до N c шагом 3 (1,4,7....) используя цикл for.
- // let x = 0;
- // let n = prompt('введи N')
- // for (let i = 1; i < n; i+=3){
- // // x += i;
- // x = (x+i)*n
- // }
- // alert("прогрессия равна: "+x);
- // chess one line
- // Сформировать строку " # # # # # " с помощью цикла for. Длина строки может быть четной и нечетной, и указывается в одном месте в коде.
- // var chess = "";
- // for(var a = 0; a < 12; a++){
- // chess += (a % 2) ? " " : "#";
- // }
- // alert(chess);
- // numbers
- // Сформировать строку c помощью вложенных циклов. Для перевода строки используйте \n.
- // let str = "";
- // for(var i = 0; i < 10; i++){
- // for(var a = 0; a < 10; a++){
- // str += a;
- // }
- // str += "\n";
- // }
- // alert(str);
- // // Сформируйте строку с шахматной доской из вложенных циклов. Для перевода строки используйте \n. Код должен поддерживать легкое изменение размеров доски.
- // var chessboard = "";
- // for(var i = 0; i < 10; i++){
- // for(var a = 0; a < 12; a++){
- // chessboard += (a % 2) == (i % 2) ? "." : "#";
- // }
- // chessboard += "\n";
- // }
- // alert(chessboard);
- // Сформируйте массив из N элементов, содержащий в себе кубы индексов, т. е:
- // [0,1,8,27,64...]
- // let arr=[];
- // let i = 0
- // let n=prompt('Введи количество элементов')
- // for(; i<n ; i++){
- // arr.push(i**3)
- // }
- // alert('Кубы индексов '+n + ' элементов: '+ arr)
- // multiply table
- // C помощью вложенного цикла сформируйте массив массивов "таблица умножения". Для инициализации вложенных массивов используйте
- // arr[i] = [] //в i-тый элемент массива заносится новый пустой массив
- // arr[5][6] должен быть равен, соответственно, 30, arr[7][2] == 14 и так далее.
- let arr = [];
- for(let i = 1; i < 10; i++){
- arr[i] = [];
- for(let j = 1; j <10; j++){
- arr[i][j] = i * j;
- }
- }
- // matrix to html table
- // Сделайте вложенный цикл, который формирует HTML-таблицу в переменной строкового типа из любого двумерного массива. Т. е. если в нём использовать результат работы предыдущего задания, то получится таблица умножения в HTML (Таблица Пифагора)
- document.write ('<table align="center" bgcolor="fdfdfd" ');
- document.write ('cellspacing="0" cellpadding="4" ');
- document.write ('border="1" >');
- let td, content;
- for (let i = 0; i < 10; i++)
- {
- document.write ('<tr>');
- for (let j = 0; j < 10; j++)
- {
- if (i == 0 || j == 0)
- {
- td = '<td >';
- if (i == 0) content = '<b>' + j + '</b>';
- else if (j == 0) content = '<b>' + i + '</b>';
- }
- else
- {
- td = '<td >';
- if (i == j) content = '<b>' + i * j + '</b>';
- else content = i * j;
- }
- document.write (td + content + '</td>');
- }
- document.write ('</tr>');
- }
-
- document.write ('<table>');
|