zoukankan      html  css  js  c++  java
  • js 面试题

    1.用原生js,创建一个无序列表添加到body中,ul下包含5个li,每个li包含一个text类型元素,text元素内容可自定义;

    <script type="text/javascript">
        window.onload = function() {
            var ulNode = document.createElement("ul");
            var bodyNode = document.getElementsByTagName("body");
            bodyNode[0].appendChild(ulNode);
            for (var i = 0; i < 5; i++) {
                var liNode = document.createElement("li");
                var textNode = document.createTextNode("我是文本节点"+i);
                liNode.appendChild(textNode);
                ulNode.appendChild(liNode);
            }
        }
    </script>

    运行结果:

    知识点:

    (1)在原生js中,window.onload  当页面加载的时候可以调用某些函数(http://www.jb51.net/article/43166.htm)

    window.onload = function() { 
        ... 
    } 

    (2)创建新的节点:

    document.createElement("div");// 定义新的div元素节点变量 

    (3)创建文本节点

    document.createTextNode() ;//可创建文本节点

    (4)向节点添加最后一个子节点

     appendChild() 

     2.

    (function(){ 
      return typeof arguments; 
    })();

    参考答案:

    arguments是对象,伪数组有两件事要注意这里:
    参数不是数组,它是一个数组一样的物体,你可以使用方括号和整数索引的元素,但方法通常可在一个如推上不存在参数数组
    Array.prototype.slice.call(arguments); 转成数组
    当然arguments即使是数组,返回的依然是"object",因为数组也是对象,附加:typeof 对类型的判断
    https://developer.mozilla.org/zh-CN/docs/JavaScript/Reference/Operators/typeof
    
    // "object"

    3.

    var f = function g(){ return 23; }; 
    typeof g();

    参考答案:

    function g(){ return 23; }是函数表达式,事实上只是一个名字,不是一个函数声明
    函数实际上是绑定到变量f,不是g.
    指定的标识符在函数表达式虽然有其用途:堆栈跟踪是清晰而不是充斥着无名的函数,你可以有一个匿名函数递归调用本身不使用argument.callee
    附非常详细的帖子函数表达式
    http://kangax.github.io/nfe/
    
    //会发生错误
  • 相关阅读:
    连分数与丢番图方程简介
    利用 random 与 tertools 模块解决概率问题
    Notepad++ 几款实用插件简介,让你的 Notepad++ 如虎添翼
    .net面试问答(大汇总)
    .net反射详解 原文://http://blog.csdn.net/wenyan07/article/details/27882363
    ASP.NET MVC4+EF5(Lambda/Linq)读取数据
    AngularJS+ASP.NET MVC+SignalR实现消息推送
    Asp.net SignalR 实现服务端消息推送到Web端
    C# Socket编程 同步以及异步通信
    C#版 Socket编程(最简单的Socket通信功能)
  • 原文地址:https://www.cnblogs.com/zhengyeye/p/5620376.html
Copyright © 2011-2022 走看看