这个代码不是很明白
来源:2-24 正则表达式的应用
球球不一般
2021-12-14 19:39:50
var name = nameField.value;
if (/^[\u4E00-\u9FA5]{2,4}$/.test(name)) {
// 如果通过校验
nameWarning.style.display = 'none';
} else {
// 如果没有通过校验
nameWarning.style.display = 'inline';
}
};
搜索
复制
1回答
好帮手慕然然
2021-12-15
同学你好,建议参考如下理解:
首先,这句代码var name = nameField.value是用于获取nameField输入框中用户输入的内容,如图
其次,后面的if语句是为了判断输入框中输入的内容是否符合正则表达式,即/^[\u4E00-\u9FA5]{2,4}$/.test(name)表示判断name是否符合正则表达式/^[\u4E00-\u9FA5]{2,4}$/,也就是2-4位汉字。
如果满足条件的话,就会执行if中的语句,即 nameWarning.style.display = 'none',表示让nameWarning元素隐藏;
如果不满足条件的话,就会执行else中的语句,即 nameWarning.style.display = 'inline',表示让nameWarning元素显示出来,如图
其中,DOM元素打点调用style属性是固定用法,用于动态修改DOM元素的style样式属性。然后再打点调用display 属性则表示动态修改元素的display属性,该属性在css中用于控制元素的显示状态,如果值为none,表示隐藏该元素,如果值为inline、inline-block、block表示显示该元素。建议同学可以再去复习一下css以及DOM的知识。
祝学习愉快!
相似问题