前端javascript知识(二)

  • documen.write和 innerHTML的区别
    document.write只能重绘整个页面
    innerHTML可以重绘页面的一部分
  • 浏览器检测通过什么?
    (1) navigator.userAgent
    (2) 不同浏览器的特性,如addEventListener
  • JavaScript有哪几种数据类型?
    简单,Number,Boolean,String,Null,Undefined
    复合,Object,Array,Function
  • 截取字符串“abcdefghi”的“fghi”
    var myvalue=”abcdefghi”;
    var jiequ=myvalue.substring(myvalue.length-4,myvalue.length);
    alert(jiequ);
    -写出下面的运算结果
    alert(typeof(null)); // object
    alert(typeof(undefined)); // undefined
    alert(typeof(NaN)); // number
    alert(NaN==undefined); // false
    alert(NaN==NaN); // false
    var str="123abc";
    alert(typeof(str++)); // number
    alert(str);// NaN
  • 问执行完毕后 x, y, z 的值分别是多少?
    var x = 1, y = z = 0;
    function add(n) {n = n+1;
    }
    y = add(x);
    function add(n) {n = n + 3;
    }
    z = add(x);
    1、undefined、undefined
  • 如何阻止事件的冒泡?
    //阻止冒泡的方法
    function stopPP(e)
    {var    evt = e|| window.event;//IE用cancelBubble=true来阻止而FF下需要用stopPropagation方法evt.stopPropagation ?evt.stopPropagation() : (evt.cancelBubble=true);
    }
  • 写出程序运行的结果?
    for(var i=0, j=0; i<10, j<6; i++, j++){k = i + j;
    }
    10
  • 编写一个方法 求一个字符串的字节长度
    /*假设:一个英文字符占用一个字节,一个中文字符占用两个字节*/
    function getBytes(str){var len = str.length,bytes = len,i = 0;for(; i<len; i++){if (str.charCodeAt(i) > 255) bytes++;}return bytes;
    }
    alert(getBytes("玩,as"));
  • JavaScript中如何对一个对象进行深度clone?
    function cloneObject(o) {if(!o || 'object' !== typeof o) {return o;}var c = 'function' === typeof o.pop ? [] : {};var p, v;for(p in o) {if(o.hasOwnProperty(p)) {v = o[p];if(v && 'object' === typeof v) {c[p] = Ext.ux.clone(v);}else {c[p] = v;}}}return c;
    };
  • 如何控制alert中的换行?
    \n alert(“p\np”);
  • 请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象,如:
    var url = “http://witmax.cn/index.php?key0=0&key1=1&key2=2″;
    function parseQueryString(url){var params = {},arr = url.split("?");if (arr.length <= 1)return params;arr = arr[1].split("&");for(var i=0, l=arr.length; i<l; i++){var a = arr[i].split("=");params[a[0]] = a[1];}return params;
    }
    var url = "http://witmax.cn/index.php?key0=0&key1=1&key2=2",ps = parseQueryString(url);
    console.log(ps["key1"]);
  • 如何控制网页在网络传输过程中的数据量?
    启用GZIP压缩
    保持良好的编程习惯,避免重复的CSS,JavaScript代码,多余的HTML标签和属性
  • 以下代码运行结果
    function say() {// Local variable that ends up within closurevar num = 888;var sayAlert = function() { alert(num); }num++;return sayAlert;
    }
    var sayAlert = say();
    sayAlert();//889
  • 请实现ECMAScript 5中的Object.getPrototypeOf() 函数
    function proto(object) {return !object?                null: '__proto__' in object?  object.__proto__: /* not exposed? */      object.constructor.prototype
    }
  • 如何实现Array.prototype.forEach?
    if (!Array.prototype.forEach) {Array.prototype.forEach = function(fn){for ( var i = 0; i < this.length; i++ ) {fn( this[i], i, this );}};
    }
    ["a", "b", "c"].forEach(function(value, index, array){assert( value, "Is in position " + index + " out of " + (array.length - 1) );
    });
  • 如何将arguments转为数组?
    Object.prototype.slice.call(arguments);
  • 以下程序运行结果?
    var ninja = function myNinja(){alert(ninja == myNinja);
    };
    ninja();
    myNinja();
    true、报错(error - myNinja is not defined.)
  • 如何获取光标的水平位置?
    function getX(e){e = e || window.event;//先检查非IE浏览器,在检查IE的位置return e.pageX || e.clentX + document.body.scrollLeft;
    }
  • 兼容浏览器的获取指定元素(elem)的样式属性(name)的方法
    function getStyle(elem, name){if(elem.style[name]){//如果属性存在于style[]中,直接取return elem.style[name];
    }
    else if(elem.currentStyle){//否则 尝试IE的方法return elem.currentStyle[name];
    }//尝试W3C的方式
    else if(document.defaultView && document.defaultView.getComputedStyle){ name = name.replace(/([A-Z])/g, "-$1");//W3C中为textAlign样式,转为text-alignname = name.toLowerCase();var s = document.defaultView.getComputedStyle(elem, "");return s && s.getPropertyValue(name);}else{return null;}
    }
  • Javascript中实现类似PHP的print_r函数
    function print_r(theObj) {var retStr = '';if(typeof theObj == 'object') {retStr += '<div style="font-family:Tahoma; font-size:7pt;">';for(var p in theObj) {if (typeof theObj[p] == 'object') {retStr += '<div><b>['+p+'] => ' + typeof(theObj) + '</b></div>';retStr += '<div style="padding-left:25px;">' +  print_r(theObj[p]) + '</div>';} else {retStr += '<div>['+p+'] => <b>' + theObj[p] +  '</b></div>';}  }retStr += '</div>';}return  retStr;
    }
  • 以下程序运行结果?
    var b = parseInt("01");
    alert("b="+b);
    var c = parseInt("09/08/2009");
    alert("c="+c);
    b=1、c=0。
  • 以下程序的运行结果?
    var foo = 'hello';
    (function() {var foo= foo || 'world';console.log(foo);
    })();
    world
  • 如何规避javascript多人开发函数重名问题?
    (1) 可以开发前规定命名规范,根据不同开发人员开发的功能在函数前加前缀
    (2) 将每个开发人员的函数封装到类中,调用的时候就调用类的函数,即使函数重名只要类名不重复就行
  • 前端开发有哪些优化问题?
    减少http请求次数:cssspirit,data uri
    JS,CSS源码压缩
    前端模板JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数
    用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能
    用setTimeout来避免页面失去响应
    用hash-table来优化查找
    当需要设置的样式很多时设置className而不是直接操作style
    少用全局变量
    缓存DOM节点查找的结果
    避免使用CSS Expression
    图片预载
    避免在页面的主体布局中使用table,table要等其中的内容完全下载之后才会显示出来,显示比div+css布局慢
  • AJAX请求总共有多少种CALLBACK
    Ajax请求总共有八种Callback
    onSuccess
    onFailure
    onUninitialized
    onLoading
    onLoaded
    onInteractive
    onComplete
    onException
  • 请给出异步加载js方案,不少于两种
    异步加载方式:
    defer,只支持IE
    async:
    创建script,插入到DOM中,加载完毕后callBack,见代码:
    function loadScript(url, callback){var script = document.createElement("script")script.type = "text/javascript";if(script.readyState){ //IEscript.onreadystatechange = function(){if (script.readyState == "loaded" ||script.readyState == "complete"){script.onreadystatechange = null;callback();}};} else {
    //Others: Firefox, Safari, Chrome, and Operascript.onload = function(){callback();};}script.src = url;document.body.appendChild(script);
    }

转载于:https://www.cnblogs.com/wu-web/p/7852584.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/399311.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端工具收集

1. Vue.js 介绍 | Vue.js Vue (读音 /vjuː/&#xff0c;类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是&#xff0c;Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层&#xff0c;不仅易于上手&#xff0c;还便于与第三方库或既有项…

HDU 1754 I Hate It

线段树&#xff0c;单点更新&#xff0c;求区间最值 /* *********************************************** Author :Zhou Zhentao Email :774388357qq.com Created Time :2015/11/20 17:21:35 File Name :acm.cpp ***************************************…

请问运行py文件的时候怎么样可以不让那个黑框一闪...

wait input("wait")转载于:https://www.cnblogs.com/ftm-datablogs/p/7857831.html

c++模板类静态成员变量_一文讲透父子类中静态变量,成员变量初始化顺序原理...

推荐&#xff1a;从面试到入职到离职&#xff0c;我在B站工作的30天时光 爱了爱了&#xff0c;Alibaba顶级MySQL调优手册到手&#xff0c;加薪妥了 爱了爱了&#xff0c;Spring Cloud Alibaba内部微服务架构笔记真的太牛了 本文主要是想分析一下静态变量和成员变量的初始化顺序…

点击放大图片

<style> body{ text-align:center} div{ margin:50px auto}</style><script type"text/javascript"> function clik(t){ //获取所有的img标签 var imgs document.getElementsByTagName("img"); …

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(八)

大熊猫猪侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 回到Xcode中,新建一个EndLayer类,继承于CCNode.因为我们得在其类方法中创建实例变量,所以我们得建立几个实例变量的属性.打开EndLayer.h文件,修改内…

转:(图文并茂)SQL Server 2005详细安装过程及配置

1、安装过程 注&#xff1a;在Windows7系统下安装SQL Server 2005时&#xff0c;可能会多次遇到提示兼容性问题的情况&#xff0c;此时不用理会&#xff0c;直接点击“运行程序”即可。首先解压下载到的SQL Server 2005压缩文件&#xff0c;如果还没有这个文件&#xff0c;可以…

设计模式范例代码

/* 1. 简单工厂模式 */ public class Operation {private double _numberA 0;private double _numberB 0;public double NumberA { get { return this._numberA; } set { this._numberA value; } }public double NumberB { get { return this._numberB; } set { this._numbe…

Node.js -- Router模块中有一个param方法

这段时间一直有在看Express框架的API&#xff0c;最近刚看到Router&#xff0c;以下是我认为需要注意的地方&#xff1a; Router模块中有一个param方法&#xff0c;刚开始看得有点模糊&#xff0c;官网大概是这么描述的&#xff1a; 1Map logic to route parameters.大概意思就…

如何测试数据库表空间不足场景

1、select * from DBA_DATA_FILES; 这个命令主要是了解数据库实例中各个模块数据库表空间的大小&#xff0c;是否支持自动扩展&#xff08;AUTOEXTENSIBLE&#xff09;,MAX扩展&#xff08;MAXBYTES&#xff09;,以及各个表空间的路径(\oracle\oradata\i2kdb\omscm.dbf) 查看AU…

2019年java安装步骤_win10的JAVA(jdk)2020年最新版安装教程心得

想学安卓反向解析&#xff0c;前期工作就把我折腾得够呛&#xff0c;java安装教程大多18年之前的&#xff0c;和现在的有一些不同&#xff0c;导致我按照网上的教程折腾了好几天都没安装成功&#xff0c;今天突然成功了&#xff0c;有点开心&#xff0c;迫不及待把自己的一些小…

蛋白质结构域的概念_Chapter1 蛋白质结构与功能2

本次回顾两大点&#xff1a;一、肽二、蛋白质结构————一、肽&#xff1a;概念&#xff1a;肽是由氨基酸通过肽键连接形成的线性分子。如上&#xff0c;该教学图涉及知识&#xff1a;1.肽键生成(最好能将反应式写出来)2.氨基酸残基residue3.肽的方向性N —> C4.肽命名5.肽…

css中的em 简单教程 -- 转

先附上原作的地址: https://www.w3cplus.com/css/px-to-em 习惯性的复制一遍~~~~ -------------------------------我是分界线----------------------------------- 什么是弹性布局&#xff1f; 用户的文字大小与弹性布局 用户的浏览器默认渲染的文字大小是“16px”&#xff0c…

信息安全系统设计基础第十一周 20135218 姬梦馨

第8章 异常控制流 控制流&#xff1a;控制转移序列。 控制转移&#xff1a;从一条指令到下一条指令。例&#xff1a;从k到k1的过渡称为控制转移。 异常控制流&#xff1a;现代操作系统通过使控制流发生突变来对系统状态做出反应&#xff0c;这些突变称为异常控制流。 平滑&…

ASP.NET MVC下的四种验证编程方式[续篇]

ASP.NET MVC下的四种验证编程方式[续篇] 原文:ASP.NET MVC下的四种验证编程方式[续篇]在《ASP.NET MVC下的四种验证编程方式》一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式&#xff08;“手工验证”、“标注ValidationAttribute特性”、“让数据类型实现IValida…

axios 配置loading_用Axios Element 实现全局的请求 loading

Kapture 2018-06-07 at 14.57.40.gif背景业务需求是这样子的&#xff0c;每当发请求到后端时就触发一个全屏的 loading&#xff0c;多个请求合并为一次 loading。现在项目中用的是 vue 、axios、element等&#xff0c;所以文章主要是讲如果使用 axios 和 element 实现这个功能。…

请求的内容似乎是脚本,因而将无法有静态文件处理程序来处理(http error 404.17、0x80070032、IIS7)...

由于工作需要&#xff0c;需要在在一台新的服务器上迁移 .Net Framwork 4.0的Web项目 环境:Windows Server 2008 SP2,IIS 7,.Net FrameWork 4.0,Classic 由于项目正常在老服务器上运行&#xff0c;所有直接将项目拷贝过来部署在IIS上面&#xff0c;配置后链接字符串等等之后访问…

Codeforces Round #114 (Div. 1) A. Wizards and Trolleybuses 物理题

A. Wizards and Trolleybuses Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/167/problem/A Description In some country live wizards. They love to ride trolleybuses. A city in this country has a trolleybus depot with n trolleyb…

如何使用GOOGLE高级搜索技巧

原文出处&#xff1a; 新浪博客&#xff08;未找到原始出处&#xff09; 如何使用GOOGLE高级搜索技巧 一&#xff0c;GOOGLE简介 Google&#xff08;www.google.com&#xff09;是一个搜索引擎&#xff0c;由两个斯坦福大学博士生Larry Page与Sergey Brin于1998年9月发明&am…

powershell 遍历json_遍历JSON文件PowerShell

我试图在PowerShell中遍历以下JSON文件。如果没有专门命名顶部标签(例如17443和17444)&#xff0c;由于我事先不知道它们的名称&#xff0c;就无法找到遍历数据的方法。我想为所有记录输出标签3、4和5(标题&#xff0c;名字&#xff0c;姓氏)。我该怎么做&#xff1f;{"17…