亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果存在價值,就這樣做。未定義與空?

如果存在價值,就這樣做。未定義與空?

12345678_0001 2023-09-25 16:46:38
我想在單擊按鈕時呈現某些操作。條件是:(如果輸入字段中存在值,則寫入“值存在”。如果值不存在,則發出警報)。我嘗試用 null 替換 undefined 。我還嘗試替換運算符 === 和 ==。沒有一個有效!請幫忙。<html><head></head><body><input id='typer' type='text'></input><button onclick='hey()'>click</button><p id='pw'></p><script>var pwpw = document.querySelector('#pw');function hey() {    if (document.getElementById('typer').value !== undefined) {        pw.innerHTML = 'value exists';    } else {        alert('value does not exists');    }}</script></body></html>
查看完整描述

2 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

null、undefined和空字符串 ( "") 都是 JavaScript 中的“假”值;這意味著如果將它們傳遞給!運算符,結果將為true。您可以在控制臺中通過運行!("")、!(null)或 (for undefined) 通過定義var x;然后調用來測試這一點!x

更重要的是,if語句實際上并不檢查其條件是否等于true,而是檢查條件是否為“真”(即false通過時計算為!)。

因此,您需要做的就是將語句的條件設置ifdocument.getElementById('typer').value,因為只要元素的值不為 null、未定義或空字符串(或 false,這也是 falsey),則條件為 true 。


查看完整回答
反對 回復 2023-09-25
?
茅侃侃

TA貢獻1842條經驗 獲得超21個贊

對于<input type="text">,文檔指出其屬性的類型.value是 a?DOMString

DOMString是一個 UTF-16 字符串。由于 JavaScript 已經使用此類字符串,DOMString因此直接映射到String.

這意味著.value永遠不會是nullundefined;有了這些知識,當您想知道某個值是否存在時,您可以做兩件事:

  1. 用于value.length判斷字符串是否為空

  2. 在語句中使用valueor!value本身來if分別確定它是否存在或為空(空字符串的計算結果為false,而非空字符串的計算結果為true


查看完整回答
反對 回復 2023-09-25
  • 2 回答
  • 0 關注
  • 122 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號