document.querySelectorAll(‘input[type=“password”]’).forEach(function(f) { f.type = “text”; // 将密码输入框的类型改为文本框 });这个程序的另五种写法
时间: 2024-11-23 08:41:06 浏览: 4
这个JavaScript代码片段使用了querySelectorAll方法获取页面上所有type属性为"password"的`<input>`元素,并对它们的type属性进行了修改,将其从"password"更改为"text"。以下是另外五种实现同样功能的不同写法:
1. 使用ES6的Array.from()和map()方法:
```javascript
let passwordInputs = Array.from(document.querySelectorAll('input[type="password"]'));
passwordInputs.map(input => input.type = 'text');
```
2. 利用ES5的for...of循环:
```javascript
for (let f of document.querySelectorAll('input[type="password"]')) {
f.type = "text";
}
```
3. 使用`.forEach()`配合箭头函数:
```javascript
document.querySelectorAll('input[type="password"]').forEach(input => input.type = 'text');
```
4. 利用现代浏览器支持的HTMLCollection遍历:
```javascript
let inputs = document.getElementsByTagName('input');
inputs.filter(input => input.getAttribute('type') === 'password').forEach(input => input.type = 'text');
```
5. 如果需要封装成一个自定义函数,可以这样写:
```javascript
function changeInputType(typeToChange) {
document.querySelectorAll(`input[type="${typeToChange}"]`).forEach(input => input.type = 'text');
}
changeInputType('password');
```
阅读全文