@Dodok said in Как сделать интерфейс?:
Я хочу как и автор темы получить качественный конструктор, а не отписки разного рода.
ок
@Nikolas said in Как прочитать содержимое переменной для JS кода?:
Подскажите, как прочитать прочитать содержимое переменной , а конкретно текст внутри этой переменной, чтоб потом JS-код в кубике "Выполнить код" увидел этот текст?
И потом перезаписать полученным (текстом) результатом эту же переменную?
Чегось?
Вот код для "Выполнить код" :
const regexpPattern = /accounts.google.com.*\n(.*)\n(.*)\n+/gi;
const searchResult = inputText.matchAll(regexpPattern);
const outputText = Array.from(searchResult)
.map((arr) => `${arr[1]}:${arr[2]}`)
.join("\n");
console.log(outputText);
Как в него "засунуть" текст для обработки? Текст мы "засовываем" из переменной......например из переменной[[DATA]]
И после обработки , перезаписать результатом переменную [[DATA]]
@UserTrue
Как же обработать в басе содержимое переменной [[DATA]] ...с этим не разобрался
Переделал код, он будет в движке БАСа работать? :
const str = `[[DATA]]`;
const txt = 'accounts.google.com'
let i = 0
do {
i = str.indexOf(txt, i)
if (i !== -1) {
i = str.indexOf('\n', i)
let k = i
for (let j = 0; j < 2 ; j++) k = str.indexOf('\n', k + 1)
const val = str.substring(i + 1, k).replace('\n', ': ')
document.write('<p>' + val + '</p>')
i = k
}
} while (i !== -1)
@Nikolas said in Как прочитать содержимое переменной для JS кода?:
@UserTrue подскажите , а какая версия движка JS в басе? Чтоб я переделал код под бас
Я не помню, проще сказать, что нововведений ecma5 и выше в нем нет
@Nikolas said in Как прочитать содержимое переменной для JS кода?:
Переделал код, он будет в движке БАСа работать? :
Нет, document это часть dom и существует только в браузере. И не только...
Если js не знаете, то лучше используйте средства бас
@Nikolas said in Как прочитать содержимое переменной для JS кода?:
@UserTrue
Как же обработать в басе содержимое переменной [[DATA]] ...с этим не разобрался
var str=[[PAGE]];
log(str);
@Bigma Ява скрипт работает выдавая годный результат в окно браузера.
А как в конце работы скрипта этот результат не в браузер вывести, а записать в переменную [[CONTENT]] ?
И ошибку в окне лога выдаёт, в чём причина?

Код:
var str=[[CONTENT]];
const txt = 'accounts.google.com'
let i = 0
do {
i = str.indexOf(txt, i)
if (i !== -1) {
i = str.indexOf('\n', i)
let k = i
for (let j = 0; j < 2 ; j++) k = str.indexOf('\n', k + 1)
const val = str.substring(i + 1, k).replace('\n', ': ')
document.write('<p>' + val + '</p>')
i = k
}
} while (i !== -1)
log(str);
Ошибка потому что log работает для действия яваскрипт.
В браузер - яваскрипт нету такого метода. Фокс говорил что только через вывод в переменную можно получить сообщение из этого действия.
Обратно так же
[[STR]]=str;
Или так
VAR_STR=str;
@Nikolas если вы хотите вывести в список, то вам вместо
document.write('<p>' + val + '</p>')
надо заполнять список, а потом передать его в бас
в верху создаете свой список, типо так
let list = [];
a вместо
document.write('<p>' + val + '</p>')
добавляете в список так
list.push(val);
а потом выводите в бас
[[LIST]]=list;
как то так
И все это дело должно работать в обычном действии яваскрипт, кажется.
@Bigma 
Выполнил в браузер - яваскрипт, ошибку перестал выдавать, но в переменную всё равно не сохраняет.
Или в действии браузер -яваскрипт никак нельзя сохранить результат работы скрипта в переменную? Вариант только парсить с экрана в переменную?
Код:
var str=[[CONTENT]];
const txt = 'accounts.google.com'
let i = 0
do {
i = str.indexOf(txt, i)
if (i !== -1) {
i = str.indexOf('\n', i)
let k = i
for (let j = 0; j < 2 ; j++) k = str.indexOf('\n', k + 1)
const val = str.substring(i + 1, k).replace('\n', ': ')
document.write('<p>' + val + '</p>')
i = k
}
} while (i !== -1)
[[CONTENT]]=str;
var str=[[CONTENT]];
const txt = 'accounts.google.com'
let list = [];
let i = 0
do {
i = str.indexOf(txt, i)
if (i !== -1) {
i = str.indexOf('\n', i)
let k = i
for (let j = 0; j < 2 ; j++) k = str.indexOf('\n', k + 1)
const val = str.substring(i + 1, k).replace('\n', ': ')
list.push(val);
i = k
}
} while (i !== -1)
[[LIST]]=list;
так попробуй, смотри в переменную LIST в басе
@Bigma said in Как прочитать содержимое переменной для JS кода?:
[[LIST]]=list;
Спасибо всё работает отлично в экешене "браузер-яваскрипт" . Может будет кому то полезен алгоритм (ниже).
Экшен "читать файл" и пишем весь текст из txt файла в переменную [[CONTENT]] --> обрабатывает в скрипте --> сохраняет в виде списка в переменную [[LIST]]
Готовый код, может кому-то будет полезен :
var str=[[CONTENT]];
let list = [];
const txt = 'accounts.google.com'
let i = 0
do {
i = str.indexOf(txt, i)
if (i !== -1) {
i = str.indexOf('\n', i)
let k = i
for (let j = 0; j < 2 ; j++) k = str.indexOf('\n', k + 1)
const val = str.substring(i + 1, k).replace('\n', ': ')
list.push(val);
i = k
}
} while (i !== -1)
[[LIST]]=list;