برمجة

جافاسكريبت: قراءة النص من input

prompt وinput.value في HTML والتحويل إلى رقم. الإلغاء يُرجع null.

كل الدروس · دروس جافاسكريبت: تعلّم من الصفر

اسأل بـ prompt

prompt يفتح نافذة صغيرة في المتصفح ويُرجع النص. عند الإلغاء تكون النتيجة null. الناتج دائماً نص. إذا احتجت رقماً اكتب Number، وإلا أصبح "12" + "34" هو "1234".

let ad = prompt("Adınızı daxil edin:");
if (ad === null) {
  console.log("İmtina edildi.");
} else {
  console.log("Salam, " + ad + "!");
}
let a = Number(prompt("Birinci ədəd:"));
let b = Number(prompt("İkinci ədəd:"));
console.log(a + b);

اقرأ من input في HTML

نص الصندوق في الصفحة داخل .value. اقرأه عند الضغط على الزر وأظهره بـ textContent. عند إرسال النموذج استدعِ preventDefault كي لا تُعاد تحميل الصفحة.

<input id="adInput" type="text">
<button id="gosterBtn">Göstər</button>
<p id="netice"></p>
<script>
  const adInput = document.getElementById("adInput");
  const netice = document.getElementById("netice");
  document.getElementById("gosterBtn").addEventListener("click", function () {
    netice.textContent = "Salam, " + adInput.value + "!";
  });
</script>

readline في Node.js

خارج المتصفح، في الطرفية، readline يطرح سؤالاً. يصل الجواب إلى دالة. في النهاية استدعِ rl.close() وإلا بقي البرنامج منتظراً. لدرس الصفحة يكفي prompt وinput في HTML.

const readline = require("readline");
const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
rl.question("Adınız: ", function (ad) {
  console.log("Salam, " + ad + "!");
  rl.close();
});

أسئلة

ماذا يُرجع prompt؟ نصاً. null عند الإلغاء.

لماذا يلتصق الرقمان؟ ما زالا نصاً. حوّلهما بـ Number() ثم اجمع.

أين نص صندوق HTML؟ في input.value. لإظهاره غيّر textContent لعنصر آخر.

لماذا يعيد النموذج تحميل الصفحة؟ submit يفعل ذلك. event.preventDefault() يوقف إعادة التحميل.

المؤلف: Nibras Code