JS常见面试题

    xiaoxiao2022-07-02  172

    一 JavaScript中是否存在函数重载功能 没有重载概念 重载:在一个类文件中,允许出现多个方法名相同,但参数列表不同的同名方法 JavaScript5.0版本没有类文件

    <script type="text/javascript"> function fun1() { alert("100"); } function fun1() { alert("200"); } window.fun1();//200,对引用对象管理内存的覆盖现象 </script>

    声明了一个fun1的方法,也可以说声明了一个fun1的对象,这个对象的引用指向函数体,当页面从上向下加载时,引用的指向会发生改变,从侧面说明没有重载

    二 JavaScript声明函数的方式:

    1【标准声明方式】 function 函数对象名(参数1, 参数2) { } 2【对象化声明方式】 var 函数对象 = function(参数1, 参数2) { }

    三 浏览器执行脚本命令的规则: 在浏览器去加载一个<script>标签时,首先将当前<script>标签中所有以【标准形式】声明的函数类型对象进行初始化,然后才会自上而下执行<script>中的命令行

    window.fun1(); //100 function fun1() { alert("100"); } window.fun2();//window.fun2 is not a function var fun2 = function() { alert("200"); } function fun1() { alert("100"); } window.fun1(); //200 function fun1() { alert("200"); } window.fun1(); //200 var fun1 = function() { alert("300"); } window.fun1(); //300

    四 JavaScript中函数的参数管理方式:使用数组作为函数的参数 JavaScript自动为每一个函数类型对象,分配一个属性【arguments】 【arguments】是一个数组。在这个数组中保存当前函数运行时接受的所有实参

    function fun1(param1, param2) { alert("100"); } function fun1(param2) { alert("200"); alert("参数的个数是:" + arguments.length); //2 for(var i = 0; i < arguments.length; i++) { alert("第" + (i + 1) + "个参数是" + arguments[i]);//a, b } } window.fun1("a", "b");//200

    五 编程体现重载功能

    function fun1() { if (arguments.length == 1 && typeof arguments[0] == "string") { alert("Hello" + arguments[0]); } else if (arguments.length == 2 && typeof arguments[0] == "number") { alert("加法运算的结果是:" + (arguments[0] + arguments[1])); } } window.fun1("Mike"); //HelloMike window.fun1(100,200);//300

    六 JavaScript顶级类型----object对象有什么特点 由于JavaScript是弱类型的对象,所以object对象运行时,可以任意添加对象中的属性和方法

    七 JavaScript中如何创建一个object类型的对象

    1.var obj = new Object(); 2.var obj = { "name" : "Mike", "age" : 23 } 3.自定义构造方法: function Student(param1, param2) { this.id = param1; this.name = param2; } var stu = new Student(10, "Mike"); 4.var arr = [];

    八 如何动态为object类型对象添加属性和方法 obj.属性名 = 值; obj[“属性名” ] = 值;

    九 要求在JavaScript中开发一个类似map对象

    function HashMap() { var obj = new Object(); this.put = function(key, value) { obj[key] = value; } this.get = function(key) { return obj[key]; } }

    十 JavaScript的作用 JavaScript是用于定位DOM对象,通过对DOM对象管理间接操作浏览器中HTML标签

    十一 DOM对象 1.DOM对象是由谁创建:是由浏览器负责创建 2.浏览器在何时创建DOM对象:浏览器在加载html标签时。会为每一个html标签创建一个DOM对象 3.DOM对象在浏览器管理的内存中以何种形式存储:以二叉树的形式存在,document相当于这颗二叉树

    十二 说说你说知道关于定位DOM对象的方式有哪些 document.getElementById document.getElementsByName document.getElementsByTagName document.getElementsByClassName

    最新回复(0)