js题

2022-03-22  本文已影响0人  静昕妈妈芦培培

1.下面代码的运行,输出的结果是:

const obj = {
  name: "kobe",
  age: 40,
  height:1.88
};

console.log(Object.keys(obj));

A:[ 'name', 'age' ]
B:[ 'name', 'age', 'height' ]
C:{ name: "kobe",age: 40}
D:{ name: "kobe",age: 40, height:1.88}
答案:B

2.下面代码的运行,输出的结果是:

const obj = {
  name: "kobe",
  age: 40,
};
Object.defineProperty(obj, "height", {
  value: 1.88,
});

console.log(Object.keys(obj));

A:[ 'name', 'age' ]
B:[ 'name', 'age', 'height' ]
C:{ name: "kobe",age: 40}
D:{ name: "kobe",age: 40, height:1.88}

答案:A

3.下面代码的运行,输出的结果是:

const obj = {
  name: "kobe",
  age: 40,
};
Object.defineProperty(obj, "height", {
  value: 1.88,
  configurable: true,
  writable: true,
  enumerable: true,
});

console.log(Object.keys(obj));

A:[ 'name', 'age' ]
B:[ 'name', 'age', 'height' ]
C:{ name: "kobe",age: 40}
D:{ name: "kobe",age: 40, height:1.88}

答案:B

4.下面代码的运行,输出的结果是:

const obj = {
  name: "kobe",
  age: 40,
  get height() {
    return this._height;
  },
  set height(newVal) {
    this._height = newVal;
  },
};
Object.defineProperty(obj, "_height", {
  value: 1.88,
});

console.log(Object.keys(obj));

A:[ 'name', 'age', 'height','_height' ]
B:[ 'name', 'age', 'height' ]
C:[ 'name', 'age', '_height' ]
D:[ 'name', 'age' ]

答案:B

5.下面代码的运行,输出的结果是:

var obj = {
  name: "kobe",
  age: 40,
  get height() {
    return this._height;
  },
  set height(newVal) {
    this._height = newVal;
  },
};
Object.defineProperty(obj, "_height", {
  value: 1.88,
});

console.log(Object.getOwnPropertyNames(obj));

A:[ 'name', 'age', 'height','_height' ]
B:[ 'name', 'age', 'height' ]
C:[ 'name', 'age', '_height' ]
D:[ 'name', 'age' ]

答案:A

6.判断题:Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组 答案:对
7.判断题:Object.getOwnPropertyNames() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组 答案:错
8.Object.getOwnPropertyNames()方法返回一个由指定对象的所有自身属性的属性名(包括不可枚举属性但不包括Symbol值作为名称的属性)组成的数组。 答案:对

9.下面代码的运行,输出的结果是:

let address = Symbol()
const obj = {
  name: "kobe",
  age: 40,
  [address]: '北京'
};
console.log(Object.getOwnPropertyNames(obj));

A:[ 'name', 'age', Symbol() ]
B:[ 'name', 'age' ]
C:[ 'name', 'age', 'address' ]
D: [ Symbol() ]
答案:B

10.下面代码的运行,输出的结果是:

let address = Symbol()
const obj = {
  name: "kobe",
  age: 40,
  [address]: '北京'
};

console.log(Object.getOwnPropertySymbols(obj));

A:[ 'name', 'age', Symbol() ]
B:[ 'name', 'age' ]
C:[ 'name', 'age', 'address' ]
D: [ Symbol() ]
答案:D

11.Object.getOwnPropertySymbols() 方法返回一个给定对象自身的所有 Symbol 属性的数组。 答案:对
12.下面代码的运行,输出的结果是:

const obj = {
  [Symbol()]: "kobe",
  [Symbol()]: 40,
  [Symbol()]: "北京",
};
console.log(obj);

A:{ [Symbol()]: 'kobe', [Symbol()]: 40, [Symbol()]: '北京' }
B:{ [Symbol()]: '北京' }

答案:A

13.下面代码的运行,输出的结果是:

const a = Symbol()
const obj = {
  [a]: "kobe",
  [a]: 40,
  [a]: "北京",
};
console.log(obj);

A:{ [Symbol()]: 'kobe', [Symbol()]: 40, [Symbol()]: '北京' }
B:{ [Symbol()]: '北京' }

答案:B

14.下面代码的运行,输出的结果是:

const obj = {
  [Symbol.for('aaa')]: "kobe",
  [Symbol.for('aaa')]: 40,
  [Symbol.for('aaa')]: "北京",
};
console.log(obj);

A:{ [Symbol(aaa)]: 'kobe', [Symbol(aaa)]: 40, [Symbol(aaa)]: '北京' }
B:{ [Symbol(aaa)]: '北京' }

答案:B

15.下面代码的运行,输出的结果是:

const obj = {
  [Symbol('aaa')]: "kobe",
  [Symbol('aaa')]: 40,
  [Symbol('aaa')]: "北京",
};
console.log(obj);

A:{ [Symbol(aaa)]: 'kobe', [Symbol(aaa)]: 40, [Symbol(aaa)]: '北京' }
B:{ [Symbol(aaa)]: '北京' }

答案:A
16.symbol 是一种基本数据类型 答案:对
17.symbol 是一个类 答案:错
18.每个从Symbol()返回的symbol值都是唯一的 答案:对
19.下面执行结果

Symbol("foo") === Symbol("foo")

A:true
B:false

答案:B
20.下面执行结果

Symbol.for("foo") === Symbol.for("foo")

A:true
B:false

答案:A
21:Symbol.for(key) 方法会根据给定的键 key,来从运行时的 symbol 注册表中找到对应的 symbol,如果找到了,则返回它,否则,新建一个与该键关联的 symbol,并放入全局 symbol 注册表中。 答案:对

上一篇下一篇

猜你喜欢

热点阅读