我正在尝试在浏览器中使用 javascript 制作交互式堆栈应用程序,但每次操作后我都无法清除控制台。
<script>
var st1 = 10;
var stk1 = new Array(10);
var count = 0;
function push1(v) {
if (st1 === 0) {
rpiseconsole.log("Stack Overflow");
}
else {
st1 = st1 - 1;
stk1[st1] = v;
print1();
}
}
function pop1() {
var temp = stk1[st1];
st1 = st1 + 1;
print1();
return temp;
}
function print1() {
for (var i = st1; i < 10; i++) {
rpiseconsole.log(stk1[i]);
}
};
function doJob() {
var x = document.getElementById("t").value;
push1(x);
document.getElementById("t").value = "";
}
function doJob1() {
var p = pop1();
document.getElementById("t1").value = p;
}
</script>
我期望每次单击按钮时,它都会打印堆栈数组并清除控制台中的先前结果,当我单击弹出按钮时,它将取出最后一个数据并将剩余的数组打印到 textarea 中.
我无法在控制台中获得 clear 选项,也无法按照将项目放入堆栈的相同顺序将数组输出到 textarea。
编写一个方法clearConsole()
并在每个print
命令之前调用它
function clearConsole() {
document.getElementById( "rpiseconsole" ).innerHTML = "";
}
演示
var st1 = 10;
var stk1 = new Array(10);
var count = 0;
function push1(v) {
if (st1 === 0) {
rpiseconsole.log("Stack Overflow");
} else {
st1 = st1 - 1;
stk1[st1] = v;
print1();
}
}
function pop1() {
var temp = stk1[st1];
st1 = st1 + 1;
print1();
return temp;
}
function print1() {
clearConsole();
for (var i = st1; i < 10; i++) {
rpiseconsole.log(stk1[i]);
}
};
function doJob() {
var x = document.getElementById("t").value;
push1(x);
document.getElementById("t").value = "";
}
function doJob1() {
var p = pop1();
document.getElementById("t1").value = p;
}
function clearConsole() {
document.getElementById( "rpiseconsole" ).innerHTML = "";
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js">
</script>
<div>Procedural Stack with Tight Coupling</div>
<div id="rpisesetup">
<textarea id="rpiseconsole"></textarea>
<script src="https://sites.google.com/a/rajeshpatkar.com/library/hub/rpiseconsole.js">
</script>
<textarea id="t"></textarea>
<textarea id="t1"></textarea>
<button onclick="doJob()">push</button>
<button onclick="doJob1()">pop</button>
</div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句