Índice
1. Questões de múltipla escolha
1. Execute o seguinte programa, o resultado de saída é ()
3. Que tipo de saída o seguinte código JS fará?
1. Saída após inverter o parâmetro inteiro
1. Questões de múltipla escolha
1. Execute o seguinte programa, o resultado de saída é ()
class Phone{
constructor(price){
this.price = price;
}
get price(){
return 999;
}
}
var p = new Phone(888);
console.log(p.price);
A、999
B、indefinido
C. Lançar uma exceção
D、888
Resposta correta: C Sua resposta: A
Analisar:
(1) Quando uma propriedade em uma classe possui apenas o método get(), mas nenhum método set(), a propriedade não pode receber um valor, nem mesmo a inicialização no método de construção é possível. Portanto, quando a propriedade preço do objeto é definido na inicialização do método de construção, uma exceção será lançada
(2) A classe Phone define apenas o método get e não define o método set, então o atributo de preço padrão é somente leitura, então você não pode definir this.price = preço no construtor
①Solução 1: não defina this.price = preço no construtor
<script>
class Phone {
constructor(price) {
// this.price = price;
}
get price() {
return 999;
}
}
var p = new Phone(888);
console.log(p.price);//输出:999
</script>
② Adicione um método set à classe Phone
<script>
class Phone {
constructor(price) {
this.price = price;
}
get price() {
return 999;
}
set price(item){
return item
}
}
var p = new Phone(888);
console.log(p.price);
</script>
(3) Documento de classe de classe
4.3 Classe ES6 | Tutorial para iniciantes
2. Como obter o texto da parte selecionada do campo select no formulário abaixo, onde obj=document.getElemById(“obj”)
<form name="a">
<select name="a" size="1" id=”obj”>
<option value="a">1</option>
<option value="b">2</option>
<option value="c">3</option>
</select>
</form>
A、obj.options[obj.selectedIndex].text
B、obj.options[obj.selectedIndex].value
C、obj. valor
D、obj.text
Resposta correta: A
Analisar:
(1) A seleção padrão atual é a primeira
- obj.options[obj.selectedIndex].text o texto de saída é 1
- obj.options[obj.selectedIndex].value valor de saída é um
(2) Obtenha o objeto de nó
<body>
<form name="a">
<select name="a" size="1" id="obj">
<option value="a">1</option>
<option value="b">2</option>
<option value="c">3</option>
</select>
</form>
<script>
window.onload = function () {
//获得下拉框的节点对象;
var obj = document.getElementById("obj");
console.log('obj',obj);
//1.获得当前选中的值:
var value = obj.value;
console.log('value',value);
//2.获得该下拉框所有的option的节点对象
var options = obj.options;
console.log('options',options);
//注意:得到的options是一个对象数组
//3.获得第0个option的value值:
var value1 = options[0].value;
console.log('value1',value1);
//4.获得第0个option的文本内容:
var text1 = options[0].text;
console.log('text1',text1);
//5.获得当前选中的option的索引
var index = obj.selectedIndex;
console.log('index',index);
//6.获得当前选中的option的文本内容
var selectedText = options[index].text;
console.log('selectedText',selectedText);
}
</script>
</body>
3. Que tipo de saída o seguinte código JS fará?
let a = 'w'
let obj = {
a: 'o',
print: function() {
console.log(this.a);
},
}
let p = obj.print;
obj.print();
p();
A、o、o
B、w、w
Vaca
D、o、indefinido
Resposta correta: D Sua resposta: C
Analisar:
(1) let a = 'w': Ao contrário da palavra-chave var, a variável declarada no escopo global usando let não se tornará propriedade do objeto janela, porque a variável declarada por let não será montada na janela, portanto é janela A variável abaixo só pode ser indefinida
(2) obj.print: isso aponta para obj , então a saída é o valor da variável a em obj, ou seja, o
(3) p(): Como o ponto this não pode ser passado, o this da função p aponta para a janela
2. Questões de programação
1. Saída após inverter o parâmetro inteiro
Exemplo: _reverse(0) -> 0 _reverse(233) -> 332 _reverse(-223) -> -322
Analisar:
Use o array reverse() para inverter o método
<script>
let number = -223
function _reverse(number){
if(number >=0){
return Math.abs(number).toString().split("").reverse().join("") * 1
}else{
return Math.abs(number).toString().split("").reverse().join("") * (-1)
}
}
console.log(_reverse(number));
</script>
o código | explicar |
---|---|
Math.abs(número) |
pegue o valor absoluto |
para sequenciar() |
número para string |
dividir("") |
String dividida em array |
reverter() |
inversão de matriz |
juntar("") |
Mesclar array para string |