卿¬æ¨¡åçæåä¸ç¯æç« ä¸ï¼æä»¬å°ççæ°ç»ââä¸ç§å°ä¸ç»æ°æ®åå¨å¨å个åéåä¸çä¼é æ¹å¼ãç°å¨æä»¬çç宿ä»ä¹ç¨ï¼ç¶åæ¢ç´¢å¦ä½æ¥å建ä¸ä¸ªæ°ç»ï¼æ£ç´¢ãæ·»å åå é¤åå¨å¨æ°ç»ä¸çå ç´ ï¼ä»¥åå ¶ä»æ´å¤çåè½ã
åæï¼ åºæ¬ççµèç¥è¯ï¼å¯¹ HTMLãCSS è¯æ³æåºç¡ççè§£ï¼è½çè§£ä»ä¹æ¯ JavaScriptã ç®æ ï¼ çè§£ä»ä¹æ¯æ°ç»ï¼åå¦ä½å¨ JavaScript 䏿使°ç»ã æ°ç»æ¯ä»ä¹ï¼æ°ç»é常被æè¿°ä¸ºâååè¡¨ä¸æ ·ç对象â; ç®åæ¥è¯´ï¼æ°ç»æ¯ä¸ä¸ªå å«äºå¤ä¸ªå¼çå¯¹è±¡ãæ°ç»å¯¹è±¡å¯ä»¥åå¨å¨åéä¸ï¼å¹¶ä¸è½ç¨åå ¶ä»ä»»ä½ç±»åçå¼å®å ¨ç¸åçæ¹å¼å¤çï¼åºå«å¨äºæä»¬å¯ä»¥åç¬è®¿é®å表ä¸çæ¯ä¸ªå¼ï¼å¹¶ä½¿ç¨å表æ§è¡ä¸äºæç¨å髿çæä½ï¼å¦å¾ªç¯ - å®å¯¹æ°ç»ä¸çæ¯ä¸ªå ç´ é½æ§è¡ç¸åçæä½ãä¹è®¸æä»¬æä¸ç³»å产ååä»·æ ¼åå¨å¨ä¸ä¸ªæ°ç»ä¸ï¼æä»¬æ³å¾ªç¯éåææè¿äºäº§åï¼å¹¶å°å®ä»¬æå°å¨å票ä¸ï¼åæ¶å°ææäº§åçä»·æ ¼ç»è®¡å¨ä¸èµ·ï¼ç¶åå°æ»ä»·æ ¼æå°å¨åºé¨ã
妿æä»¬æ²¡ææ°ç»ï¼æä»¬å¿ 须尿¯ä¸ªäº§ååå¨å¨ä¸ä¸ªåç¬çåéä¸ï¼ç¶åè°ç¨æå°ç代ç ï¼å¹¶ä¸ºæ¯ä¸ªäº§ååç¬æ·»å ãè±è´¹çæ¶é´è¦é¿å¾å¤ï¼æçå¾ä½ï¼èä¸ä¹å®¹æåºéã妿æä»¬æ 10 个产åéè¦æ·»å å票ï¼é£å°±åªæ¯æç¹éº»ç¦èå·²ï¼ä½æ¯ 100 ä¸ªï¼æè 1000 个å¢ï¼æä»¬ç¨åå°å¨æç« ä¸ä½¿ç¨è¿ä¸ªä¾åã
å以åçæç« 䏿 ·ï¼æä»¬éè¿å¨ JavaScript æ§å¶å°ä¸è¾å ¥ä¸äºç¤ºä¾æ¥äºè§£æ°ç»çåºç¡ç¥è¯ãæä»¬å¨ä¸é¢æä¾äºä¸ä¸ªï¼ä½ ä¹å¯ä»¥å¨åç¬çé项塿çªå£ä¸æå¼æ¤æ§å¶å°ï¼æè å¦æä½ æ¿æï¼è¯·ä½¿ç¨æµè§å¨çå¼åè å·¥å ·æ§å¶å°ï¼ã
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>JavaScript console</title>
<style>
* {
box-sizing: border-box;
}
html {
background-color: #0c323d;
color: #809089;
font-family: monospace;
}
body {
max-width: 700px;
}
p {
margin: 0;
width: 1%;
padding: 0 1%;
font-size: 16px;
line-height: 1.5;
float: left;
}
.input p {
margin-right: 1%;
}
.output p {
width: 100%;
}
.input input {
width: 96%;
float: left;
border: none;
font-size: 16px;
line-height: 1.5;
font-family: monospace;
padding: 0;
background: #0c323d;
color: #809089;
}
div {
clear: both;
}
</style>
</head>
<body></body>
<script>
var geval = eval;
function createInput() {
var inputDiv = document.createElement("div");
var inputPara = document.createElement("p");
var inputForm = document.createElement("input");
inputDiv.setAttribute("class", "input");
inputPara.textContent = ">";
inputDiv.appendChild(inputPara);
inputDiv.appendChild(inputForm);
document.body.appendChild(inputDiv);
if (document.querySelectorAll("div").length > 1) {
inputForm.focus();
}
inputForm.addEventListener("change", executeCode);
}
function executeCode(e) {
try {
var result = geval(e.target.value);
} catch (e) {
var result = "error â " + e.message;
}
var outputDiv = document.createElement("div");
var outputPara = document.createElement("p");
outputDiv.setAttribute("class", "output");
outputPara.textContent = "Result: " + result;
outputDiv.appendChild(outputPara);
document.body.appendChild(outputDiv);
e.target.disabled = true;
e.target.parentNode.style.opacity = "0.5";
createInput();
}
createInput();
</script>
</html>
å建æ°ç»
æ°ç»ç±æ¹æ¬å·ææï¼å ¶ä¸å å«ç¨éå·åéçå ç´ å表ã
å设æä»¬æ³å¨ä¸ä¸ªæ°ç»ä¸åå¨ä¸ä¸ªè´ç©æ¸ å - æä»¬ä¼åä¸äºåä¸é¢è¿æ ·çäºæ ãå¨ä½ çæ§å¶å°ä¸è¾å ¥ä»¥ä¸è¡ï¼
let shopping = ["bread", "milk", "cheese", "hummus", "noodles"];
shopping;
å¨è¿ç§æ åµä¸ï¼æ°ç»ä¸çæ¯ä¸ªé¡¹ç®é½æ¯ä¸ä¸ªå符串ï¼ä½è¯·è®°ä½ï¼ä½ å¯ä»¥å°ä»»ä½ç±»åçå ç´ åå¨å¨æ°ç»ä¸ - åç¬¦ä¸²ï¼æ°åï¼å¯¹è±¡ï¼å¦ä¸ä¸ªåéï¼çè³å¦ä¸ä¸ªæ°ç»ãä½ ä¹å¯ä»¥æ··ååå¹é 项ç®ç±»å - å®ä»¬å¹¶ä¸é½æ¯æ°åï¼å符串çãå°è¯ä¸é¢è¿äºï¼
let sequence = [1, 1, 2, 3, 5, 8, 13];
let random = ["tree", 795, [0, 1, 2]];
å°è¯åå»ºä½ èªå·±çå 个æ°ç»ï¼ç¶ååç»§ç»å¾ä¸çã
ç¶åï¼ä½ å¯ä»¥ä½¿ç¨æ¬å·è¡¨ç¤ºæ³è®¿é®æ°ç»ä¸çå ç´ ï¼ä¸ æ£ç´¢ç¹å®å符串å符 çæ¹æ³ç¸åã
å¨ä½ çæ§å¶å°ä¸è¾å ¥ä»¥ä¸å 容ï¼
shopping[0];
// returns "bread"
ä½ è¿å¯ä»¥ç®åå°ä¸ºå个æ°ç»å ç´ æä¾æ°å¼æ¥ä¿®æ¹æ°ç»ä¸çå ç´ ãä¾å¦ï¼
shopping[0] = "tahini";
shopping;
// shopping will now return [ "tahini", "milk", "cheese", "hummus", "noodles" ]
夿³¨ï¼ æä»¬ä»¥å说è¿ï¼ä½è¿æ¯æéä¸ä¸ââçµèä» 0 å¼å§è®¡æ°ï¼
请注æï¼æ°ç»ä¸å
嫿°ç»çè¯ç§°ä¹ä¸ºå¤ç»´æ°ç»ãä½ å¯ä»¥éè¿å°ä¸¤ç»æ¹æ¬å·é¾æ¥å¨ä¸èµ·æ¥è®¿é®æ°ç»å
çå¦ä¸ä¸ªæ°ç»ãä¾å¦ï¼è¦è®¿é®æ°ç»å
é¨çä¸ä¸ªé¡¹ç®ï¼å³ random
æ°ç»ä¸ç第ä¸ä¸ªé¡¹ç®ï¼åè§ä¸ä¸èï¼ï¼æä»¬å¯ä»¥è¿æ ·åï¼
å¨ç»§ç»ä¹åï¼å°è¯å¯¹ä½ çæ°ç»ç¤ºä¾è¿è¡ä¸äºä¿®æ¹ãç©ä¸ç©ï¼ççåªäºææï¼åªäºæ æã
ä½ å¯ä»¥éè¿ä½¿ç¨ length
屿§è·åæ°ç»çé¿åº¦ï¼æ°ç»ä¸æå¤å°é¡¹å
ç´ ï¼ï¼è¿ä¸æ¥æ¾å符串çé¿åº¦ï¼ä»¥å符为åä½ï¼å®å
¨ç¸åãå°è¯ä»¥ä¸ä»£ç ï¼
sequence.length;
// should return 7
è½ç¶ length 屿§ä¹æå ¶ä»ç¨éï¼ä½æå¸¸ç¨äºå¾ªç¯ï¼å¾ªç¯éåæ°ç»ä¸çææé¡¹ï¼ãä¾å¦ï¼
let sequence = [1, 1, 2, 3, 5, 8, 13];
for (let i = 0; i < sequence.length; i++) {
console.log(sequence[i]);
}
ä½ å°å¨ä»¥åçæç« 䏿£ç¡®å°äºè§£å¾ªç¯ï¼ä½ç®èè¨ä¹ï¼è¿æ®µä»£ç çæææ¯ï¼
卿¬èä¸ï¼æä»¬å°ä»ç»ä¸äºç¸å½æç¨çæ°ç»æ¹æ³ï¼è¿äºæ¹æ³å 许æä»¬å°å符串æå为å符串æ°ç»ï¼åä¹äº¦ç¶ï¼ä»¥åæ·»å æå é¤å ç´ ã
åç¬¦ä¸²åæ°ç»ä¹é´ç转æ¢é常ï¼ä½ ä¼çå°ä¸ä¸ªå
å«å¨ä¸ä¸ªé¿é¿çå符串ä¸çåå§æ°æ®ï¼ä½ å¯è½å¸æå°æç¨ç项ç®åææ´æç¨ç表åï¼ç¶å对å®ä»¬è¿è¡å¤çï¼ä¾å¦å°å®ä»¬æ¾ç¤ºå¨æ°æ®è¡¨ä¸ã为æ¤ï¼æä»¬å¯ä»¥ä½¿ç¨ split()
æ¹æ³ãå¨å
¶æç®åçå½¢å¼ä¸ï¼è¿éè¦ä¸ä¸ªåæ°ï¼ä½ è¦å°å符串åéçå符ï¼å¹¶è¿ååé符ä¹é´çå串ï¼ä½ä¸ºæ°ç»ä¸ç项ã
夿³¨ï¼ 好å§ï¼ä»ææ¯ä¸è®²ï¼è¿æ¯ä¸ä¸ªåç¬¦ä¸²æ¹æ³ï¼è䏿¯ä¸ä¸ªæ°ç»æ¹æ³ï¼ä½æ¯æä»¬æå®æ¾å¨æ°ç»ä¸ï¼å 为å®å¨è¿éå¾åéã
æä»¬æ¥ç©ä¸ä¸è¿ä¸ªæ¹æ³ï¼çç宿¯å¦ä½å·¥ä½çãé¦å ï¼å¨æ§å¶å°ä¸å建ä¸ä¸ªå符串ï¼
let myData = "Manchester,London,Liverpool,Birmingham,Leeds,Carlisle";
ç°å¨æä»¬ç¨æ¯ä¸ªéå·åéå®ï¼
let myArray = myData.split(",");
myArray;
æåï¼å°è¯æ¾å°æ°æ°ç»çé¿åº¦ï¼å¹¶ä»ä¸æ£ç´¢ä¸äºé¡¹ç®ï¼
myArray.length;
myArray[0]; // the first item in the array
myArray[1]; // the second item in the array
myArray[myArray.length - 1]; // the last item in the array
ä½ ä¹å¯ä»¥ä½¿ç¨ join()
æ¹æ³è¿è¡ç¸åçæä½ãå°è¯ä»¥ä¸ï¼
let myNewString = myArray.join(",");
myNewString;
å°æ°ç»è½¬æ¢ä¸ºå符串çå¦ä¸ç§æ¹æ³æ¯ä½¿ç¨ toString()
æ¹æ³ã toString()
å¯ä»¥æ¯ join()
æ´ç®åï¼å 为å®ä¸éè¦ä¸ä¸ªåæ°ï¼ä½æ´æéå¶ãä½¿ç¨ join()
å¯ä»¥æå®ä¸åçåé符ï¼å°è¯ä½¿ç¨ä¸éå·ä¸åçå符è¿è¡æ¥éª¤ 4ï¼ã
let dogNames = ["Rocket", "Flash", "Bella", "Slugger"];
dogNames.toString(); //Rocket,Flash,Bella,Slugger
æä»¬è¿æ²¡ææ¶µçæ·»å åå 餿°ç»å
ç´ ï¼ç°å¨è®©æä»¬æ¥ççãæä»¬å°ä½¿ç¨å¨ä¸ä¸è䏿åæå°ç myArray
æ°ç»ãå¦æä½ å°æªéµå¾ªè¯¥é¨åï¼è¯·å
卿§å¶å°ä¸å建æ°ç»ï¼
let myArray = [
"Manchester",
"London",
"Liverpool",
"Birmingham",
"Leeds",
"Carlisle",
];
é¦å
ï¼è¦å¨æ°ç»æ«å°¾æ·»å æå é¤ä¸ä¸ªé¡¹ç®ï¼æä»¬å¯ä»¥ä½¿ç¨ push()
å pop()
ã
让æä»¬å
ä½¿ç¨ push()
ââæ³¨æï¼ä½ éè¦æ·»å ä¸ä¸ªæå¤ä¸ªè¦æ·»å å°æ°ç»æ«å°¾çå
ç´ ãå°è¯ä¸é¢ç代ç ï¼
myArray.push("Cardiff");
myArray;
myArray.push("Bradford", "Brighton");
myArray;
彿¹æ³è°ç¨å®ææ¶ï¼å°è¿åæ°ç»çæ°é¿åº¦ã妿è¦å°æ°æ°ç»é¿åº¦åå¨å¨åéä¸ãä¾å¦ï¼
var newLength = myArray.push("Bristol");
myArray;
newLength;
仿°ç»ä¸å 餿åä¸ä¸ªå
ç´ çè¯ç´æ¥ä½¿ç¨ pop()
å°±å¯ä»¥ãä¾å¦ï¼
彿¹æ³è°ç¨å®ææ¶ï¼å°è¿åå·²å é¤ç项ç®ãä½ ä¹å¯ä»¥è¿æ ·åï¼
let removedItem = myArray.pop();
myArray;
removedItem;
unshift()
å shift()
ä»åè½ä¸ä¸ push()
å pop()
å®å
¨ç¸åï¼åªæ¯å®ä»¬åå«ä½ç¨äºæ°ç»çå¼å§ï¼è䏿¯ç»å°¾ã
é¦å
unshift()
ââå°è¯ä¸ä¸è¿ä¸ªå½ä»¤ï¼
myArray.unshift("Edinburgh");
myArray;
ç°å¨ shift()
ââå°è¯ä¸ä¸ï¼
let removedItem = myArray.shift();
myArray;
removedItem;
æä»¬åå°åé¢æè¿°çä¾åââæå°åºå票ä¸ç产ååç§°åä»·æ ¼ï¼ç¶åè®¡ç®æ»ä»·æ ¼å¹¶å°å ¶å°å¨åºé¨ãå¨ä¸é¢çå¯ç¼è¾ç¤ºä¾ä¸ï¼å 嫿°åçæ³¨éââæ¯ä¸ªæ³¨éæ è®°é½æ¯ä½ å¿ é¡»åä»£ç æ·»å å 容çå°æ¹ãå®ä»¬å¦ä¸ï¼
// number 1
注éä¸é¢æ¯ä¸äºåç¬¦ä¸²ï¼æ¯ä¸ªå符串å
å«ä¸ä¸ªäº§ååç§°åä¸ä¸ªåå·åéçä»·æ ¼ãæä»¬å¸æä½ å°å
¶è½¬æ¢ä¸ºä¸ä¸ªæ°ç»ï¼å¹¶å°å
¶åå¨å¨å为 products
çæ°ç»ä¸ã// number 2
注éåä¸è¡çæ¯ for 循ç¯çå¼å¤´ãå¨è¿è¡ä¸ï¼æä»¬ç®åæ i <= 0
ï¼è¿æ¯ä¸ä¸ªæ¡ä»¶æµè¯ï¼å¯¼è´ for å¾ªç¯ ç«å³åæ¢ï¼å 为å®è¯´âå½ i
ä¸åå°äºæçäº 0âæ¶åæ¢ï¼è i
ä» 0 å¼å§ãæä»¬å¸æä½ ä½¿ç¨æ¡ä»¶æµè¯æ¥æ¿æ¢å®ï¼å½ i
ä¸åå°äº products
æ°ç»çé¿åº¦æ¶ï¼è¯¥æ¡ä»¶æµè¯ä¼åæ¢å¾ªç¯ã// number 3
注éç䏿¹ï¼æä»¬å¸æä½ ç¼åä¸è¡ä»£ç ï¼å°å½åæ°ç»é¡¹ç®ï¼åç§°ï¼ä»·æ ¼ï¼åæä¸¤ä¸ªç¬ç«ç项ç®ï¼ä¸ä¸ªåªå
å«è¯¥åç§°ï¼ä¸ä¸ªåªå
å«è¯¥ä»·æ ¼ãå¦æä½ ä¸ç¡®å®å¦ä½æ§è¡æ¤æä½ï¼è¯·åé
æç¨çåç¬¦ä¸²æ¹æ³æç« 以è·å¾ä¸äºå¸®å©ï¼çè³æ´å¥½çççæ¬æä¸çåç¬¦ä¸²åæ°ç»ä¹é´ç转æ¢é¨åãtotal
çåé被å建ï¼å¹¶å¨ä»£ç çé¡¶é¨èµå¼ä¸º 0ãå¨å¾ªç¯å
ï¼å¨ // number 4
注éä¸é¢ï¼ï¼æä»¬å¸æä½ æ·»å ä¸è¡ï¼å°å½å项ç®ä»·æ ¼æ·»å å°å¾ªç¯ä¸çè¿ä»£åéï¼ä»¥ä¾¿å¨ä»£ç ç»å°¾å¤å°æ£ç¡®çæ»æ°æå°å°å票ä¸ãä½ å¯è½éè¦ä¸ä¸ªèµå¼è¿ç®ç¬¦æ¥æ§è¡æ¤æä½ã// number 5
注éçè¡ï¼ä»¥ä¾¿ä½¿ itemText
åéçäºâå½å项ç®åç§° - $ å½å项ç®ä»·æ ¼âï¼ä¾å¦âShoes - $ 23.99âï¼ä»¥æ¤å°æ¯ä¸ªé¡¹ç®çæ£ç¡®ä¿¡æ¯é½å°å¨å票ä¸ãè¿åªæ¯ç®åçåç¬¦ä¸²è¿æ¥ï¼ä½ åºè¯¥å¯¹æ¤å¾çæã<div class="output" style="min-height: 150px;">
<ul></ul>
<p></p>
</div>
<textarea id="code" class="playable-code" style="height: 370px;">
var list = document.querySelector('.output ul');
var totalBox = document.querySelector('.output p');
var total = 0;
list.innerHTML = '';
totalBox.textContent = '';
// number 1
'Underpants:6.99'
'Socks:5.99'
'T-shirt:14.99'
'Trousers:31.99'
'Shoes:23.99';
for (var i = 0; i <= 0; i++) { // number 2
// number 3
// number 4
// number 5
itemText = 0;
var listItem = document.createElement('li');
listItem.textContent = itemText;
list.appendChild(listItem);
}
totalBox.textContent = 'Total: $' + total.toFixed(2);
</textarea>
<div class="playable-buttons">
<input id="reset" type="button" value="Reset" />
<input id="solution" type="button" value="Show solution" />
</div>
var textarea = document.getElementById("code");
var reset = document.getElementById("reset");
var solution = document.getElementById("solution");
var code = textarea.value;
function updateCode() {
eval(textarea.value);
}
reset.addEventListener("click", function () {
textarea.value = code;
updateCode();
});
solution.addEventListener("click", function () {
textarea.value = jsSolution;
updateCode();
});
var jsSolution =
"var list = document.querySelector('.output ul');\nvar totalBox = document.querySelector('.output p');\nvar total = 0;\nlist.innerHTML = '';\ntotalBox.textContent = '';\n\nvar products = ['Underpants:6.99',\n 'Socks:5.99',\n 'T-shirt:14.99',\n 'Trousers:31.99',\n 'Shoes:23.99'];\n\nfor(var i = 0; i < products.length; i++) {\n var subArray = products[i].split(':');\n var name = subArray[0];\n var price = Number(subArray[1]);\n total += price;\n itemText = name + ' â $' + price;\n\n var listItem = document.createElement('li');\n listItem.textContent = itemText;\n list.appendChild(listItem);\n}\n\ntotalBox.textContent = 'Total: $' + total.toFixed(2);";
textarea.addEventListener("input", updateCode);
window.addEventListener("load", updateCode);
积æå¦ä¹ ï¼å 5 个æç´¢
å½ä½ å¨ Web ç¨åºä¸ç»´æ¤å½åæ´»å¨å
ç´ çè®°å½æ¶ï¼push()
å pop()
æ¯ä¸éçæ¹æ³ãä¾å¦ï¼å¨å¨ç»åºæ¯ä¸ï¼ä½ å¯è½ä¼æä¸ç³»å表示å½åæ¾ç¤ºçèæ¯å¾åç对象ï¼å¹¶ä¸ç±äºæ§è½ææ··ä¹±åå ï¼ä½ å¯è½åªéè¦ä¸æ¬¡æ¾ç¤º 50 个ãå½å建æ°å¯¹è±¡å¹¶å°å
¶æ·»å å°æ°ç»ä¸æ¶ï¼å¯ä»¥ä»æ°ç»ä¸å é¤è¾æ§çå¯¹è±¡ä»¥ä¿ææéçæ°éã
å¨è¿ä¸ªä¾åä¸ï¼æä»¬å°å±ç¤ºä¸ç§æ´ç®åçä½¿ç¨æ¹æ³ - å¨è¿éæä»¬ç»ä½ ä¸ä¸ªåçæç´¢ç½ç«ï¼ä¸ä¸ªæç´¢æ¡ãè¿ä¸ªæ³æ³æ¯ï¼å½å¨æç´¢æ¡ä¸è¾å ¥æ¶ï¼å表ä¸ä¼æ¾ç¤º 5 个å åçæç´¢åè¯ãå½åè¡¨é¡¹ç®æ°éè¶ è¿ 5 æ¶ï¼æ¯å½æ°é¡¹ç®è¢«æ·»å å°é¡¶é¨æ¶ï¼æåä¸ä¸ªé¡¹ç®å¼å§è¢«å é¤ï¼å æ¤æ»æ¯æ¾ç¤º 5 个以åçæç´¢åè¯ã
夿³¨ï¼ å¨çæ£çæç´¢åºç¨ä¸ï¼ä½ å¯è½å¯ä»¥ç¹å»å åçæç´¢åè¯è¿åä¸ä¸æ¬¡æç´¢ï¼å¹¶æ¾ç¤ºå®é çæç´¢ç»æï¼æä»¬ç°å¨åªæ¯ä¿æç®åçé»è¾ã
è¦å®æè¯¥åºç¨ç¨åºï¼æä»¬éè¦ä½ ï¼
//number 1
注éä¸é¢æ·»å ä¸è¡ï¼å°è¾å
¥å°æç´¢æ¡ä¸çå½å弿·»å å°æ°ç»çå¼å¤´ãè¿å¯ä»¥ä½¿ç¨ searchInput.value
æ£ç´¢ã// number 2
注é䏿¹æ·»å ä¸è¡ï¼è¯¥è¡å 餿°ç»æ«å°¾çå½åå¼ã<div class="output" style="min-height: 150px;">
<input type="text" /><button>Search</button>
<ul></ul>
</div>
<textarea id="code" class="playable-code" style="height: 370px;">
var list = document.querySelector('.output ul');
var searchInput = document.querySelector('.output input');
var searchBtn = document.querySelector('.output button');
list.innerHTML = '';
var myHistory = [];
searchBtn.onclick = function() {
// 妿æç´¢æ¡ä¸ä¸ºç©ºï¼æä»¬åå°æç´¢è¯æ·»å å°å¼å¤´
if (searchInput.value !== '') {
// number 1
// æ¸
空æ¾ç¤ºçæç´¢å
³é®è¯å表ï¼é²æ¢æ¾ç¤º
// æ¯æ¬¡è¾å
¥æç´¢è¯é½ä¼éæ°çææ¾ç¤ºçå
容
list.innerHTML = '';
// éè¿å¾ªç¯éåï¼æ¾ç¤ºææçæç´¢å
³é®è¯
for (var i = 0; i < myHistory.length; i++) {
var itemText = myHistory[i];
var listItem = document.createElement('li');
listItem.textContent = itemText;
list.appendChild(listItem);
}
// 妿æ°ç»çé¿åº¦å¤§äº 5ï¼é£ä¹ä¾¿ç§»é¤æ§çæç´¢å
³é®è¯
if (myHistory.length >= 5) {
// number 2
}
// æ¸
空并èç¦å°æç´¢æ¡ï¼åå¤ä¸ä¸æ¬¡çæç´¢
searchInput.value = '';
searchInput.focus();
}
}
</textarea>
<div class="playable-buttons">
<input id="reset" type="button" value="Reset" />
<input id="solution" type="button" value="Show solution" />
</div>
var textarea = document.getElementById("code");
var reset = document.getElementById("reset");
var solution = document.getElementById("solution");
var code = textarea.value;
function updateCode() {
eval(textarea.value);
}
reset.addEventListener("click", function () {
textarea.value = code;
updateCode();
});
solution.addEventListener("click", function () {
textarea.value = jsSolution;
updateCode();
});
var jsSolution =
"var list = document.querySelector('.output ul');\nvar searchInput = document.querySelector('.output input');\nvar searchBtn = document.querySelector('.output button');\n\nlist.innerHTML = '';\n\nvar myHistory= [];\n\nsearchBtn.onclick = function() {\n if(searchInput.value !== '') {\n myHistory.unshift(searchInput.value);\n\n list.innerHTML = '';\n\n for(var i = 0; i < myHistory.length; i++) {\n var itemText = myHistory[i];\n var listItem = document.createElement('li');\n listItem.textContent = itemText;\n list.appendChild(listItem);\n }\n\n if(myHistory.length >= 5) {\n myHistory.pop();\n }\n\n searchInput.value = '';\n searchInput.focus();\n }\n}";
textarea.addEventListener("input", updateCode);
window.addEventListener("load", updateCode);
æ»ç»
é è¯»æ¬æåï¼æä»¬ç¸ä¿¡ä½ ä¼æç½æ°ç»æ¯å¾æç¨ç; ä½ ä¼çå°å®ä»¬å¨ JavaScript ä¸éå¤å¯è§ï¼é常ä¸å¾ªç¯ç¸å ³ï¼ä»¥ä¾¿å¯¹æ°ç»ä¸çæ¯ä¸ªå ç´ ååæ ·çäºæ ãæä»¬å°æä½ æææç¨çåºç¡ç¥è¯ï¼äºè§£ä¸ä¸ä¸ªæ¨¡åä¸ç循ç¯ï¼ä½ç°å¨ä½ åºè¯¥ç»èªå·±é¼æï¼å¹¶ç¨å 伿¯; ä½ å·²ç»å®æäºæ¬åå ä¸çæææç« ï¼
å¯ä¸éè¦åçå°±æ¯éè¿è¿ä¸ªæ¨¡åçè¯ä¼°ï¼è¿å°æµè¯ä½ 对ä¹åçæç« ççè§£ã
åè§Array
â Array 对象å¼ç¨é¡µé¢ - æå
³æ¤é¡µé¢ä¸è®¨è®ºåè½ç详ç»åèæåçãRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4