js题集9

1.

    var lowerCaseOnly =  /^[a-z]+$/;

    [lowerCaseOnly.test(null), lowerCaseOnly.test()]

答案:有关正则表达式,test过程会将传入的变量自动转换为字符串 null-》"null",完全没有则会转换为"undefined"

2.

"1 2 3".replace(/\d/g, parseInt)

答案:replace的第二个函数如何传参,parseInt一共可以传几个参数,结果:1,NaN,3

3.

   function foo() { }

    var oldName = foo.name;

    foo.name = "bar";

    [oldName, foo.name]

答案:纠结点,变量声明会提升至当前块的顶端,那么属性赋值呢?其实上面的都是废话,坑根本不在这变量声明与属性赋值。

函数的name属性---只读。。所以上面的代码无法改变。

结果:“foo”*2

追加:Object.defineProperty()//有用过这个的么。

4.

    var a = /123/, b = /123/;

    a == b

    a === b

答案:每个正则都是一个新的。

 

5.

  var a = {class: "Animal", name: 'Fido'};

    a.class

答案:关键字可不可以用呢?有的浏览器可以还是不可以。自行查看ecma。

6.

  console.log('one');

setTimeout(function() {

  console.log('two');

}, 0);

console.log('three');

有关setTimeout延迟(异步或者神马的)。

结果:one three two

7.

[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]

追加:输出[1,2,3,4,5,4,3,2,1]

这个没有答案标准。

posted @ 2017-08-08 10:56  tong24  阅读(229)  评论(0编辑  收藏  举报