结束XML之旅,開始JavaScript的学习,看视频。了解了她的前世今生,还是为她捏了把汗啊!看了部分视频了,简单的总结一下吧!JavaScript是什么?JavaScript是一种基于面向对象和事件驱动,并具有相对安全性的client脚本语言。这是JavaScript的定义。有没有看出非常熟悉的概念?首先是面向对象和事件驱动,这是从VB 6.0那看到的概念:Visual Basic是一种由 Microsoft 公司开发的结构化的、模块化的、面向对象的、包括协助开发环境的...
这篇文章主要介绍了JS判断字符串长度的5个方法,并且区分中文和英文,需要的朋友可以参考下目的:计算字符串长度(英文占1个字符,中文汉字占2个字符)目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) 方法一: 代码如下:String.prototype.gblen = function() { var len = 0; for (var i=0; i<this.length; i++) { if (this.charCodeAt(i)>127 || this.charCodeAt(i)==94) { len += 2; } else { ...
1、svg 图片 中 2、类似这样的节点:<metadata> <cge:Layer_Ref ObjectName="BranchLayer"/> <cge:PSR_Ref ObjectID="LoadBreakSwitch_1111277770" ObjectName="4#开关"/></metadata> 这样 查找: var xpathResult = document.evaluate("//cge:psr_ref", g, nsResolver, 0, null); if ((xpathResult.resultType == 4) || (xpathResult.resultType == 5)) { var node = xpathResult.iterateNext(); ...
我们都有一个误区,就是认为形成 Javascript 对象的prototype chain 的 prototype 就是一个名字为 prototype 的属性,而且是可以访问的。其实,Javascript 的 prototype 和 名字为 prototype 的属性在一开始一点儿关系都没有,是两个不同的事物。 var Richard = new Object(); alert(typeof(Richard.prototype)); //undefinedvar Richard = new Object(); alert(Richard.__proto__); //[object Object]对于一般对象来说,我们只能...
源代码:$.ajax({url : "<%=request.getContextPath()%>/cartree/testCartree.action",type : "GET",cache : false,async : false,data : {"method" : "selFun"},dataType : "json",contentType: "application/x-www-form-urlencoded; charset=utf-8", success : function(json){var lsgj_tree_context = "<script type=\"text/javascript\">"+"c = new dTree(\"c\");"+"c.config.useCookies = false;"+"c.config.useStatusText = ...
哈哈,面向对象的创建居然学了这么久,不废话。首先是创建面向的对象的方式。最常用的构造函数和原型模式混合。对于方法使用原型模式,对于属性使用构造函数的方式。。为什么要组合这两种方式呢,是因为通过原型模式创建引用类型的值的时候。创建实例时这个引用类型的值更改,会影响到其他实例。继承,es5使用原型链来继承。继承是通过创建一个对象的实例,并赋给另一个对象的prototype实现的。结果是原来存在于实例中的所有方法和...
js面向对象的特点:继承(inheritance):对象方法和属性的继承多态(polymorphism):组件开发抽象(abstract):抓住核心问题封装(encapsulation):把功能写出方法面向过程式切换面板实现:<!DOCTYPE HTML><html><head><meta charset="utf-8"><title>切换面板</title><style>#div1 input {background: white;}#div1 input.active {background: yellow;}#div1 div {width: 200px;height: 200px;background: #CCC;display: none;}</style...
一:基本概念1、字面意思是摇树,一句话:项目中没有使用的代码会在打包时候丢掉。分为css的tree shaking和js的tree shaking。2、使用场景:1)常规优化。2)使用第三方库,但是只使用了部分功能。二:JS tree shaking在webpack4中已经移除了UglifyJsPlugin,只需要配置mode为"production",即可显式激活 UglifyjsWebpackPlugin 插件。下面说的是webpack3.10.0的实现方法:(1)常规业务的tree shaking1、webpack.config.js配置con...
下面是对此知识的系统介绍(转自互联网):
Javascript 是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼、富有朝气。但也许你还没有发现并应用它的一些更高级的功能吧?比如,对文件和文件夹进 行读、写和删除,就象在VB、VC等高级语言中经常做的工作一样。怎么样,你是否需要了解这方面的知识?那就请跟我来,本文将详细描述如何使用 Javascript语言进行文件操作。
一、功能实现核心:FileSystemObject 对象
其实...
1. 事件循环JS是单线程执行的(浏览器渲染进程的渲染主线程),它怎么处理各种各样的异步操作和事件呢?最早的方案是回调,如SetTimeout来设置定时器,通过XmlHttpRequest(ActiveXObject)来异步下载文件或调用后端API,如Node中可以使用readFile来读取文件,他们都是通过传入回调函数,当浏览器和Node执行完了之后把返回的数据作为参数给回调函数进行调用。那么多的事件,诸如有触发绘制页面的事件,有鼠标点击、拖拽、放大缩小的...
Ext JS提供了大量的功能来使类的创建和处理变得简单,还提供了一系列的功能来扩展和重新现有的Javascript类。这意味着可以为类添加行为和创建属于自己的类,或者重写某些函数的行为。在本文,将展示如何实现特定主题类的重写。原文:http://www.sencha.com/blog/creating-theme-specific-overrides-in-ext-js/作者:Lee Boonstra Lee is a technical trainer at Sencha. She’s located in Ams...
转载的:转自阮一峰的博客:http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html一、回调函数这是异步编程最基本的方法。假定有两个函数f1和f2,后者等待前者的执行结果。 f1(); f2();如果f1是一个很耗时的任务,可以考虑改写f1,把f2写成f1的回调函数。 function f1(callback){ setTimeout(function () { // f1的任务代码 callback(); }, 1000); }执行...
/*JavaScript和其他的语言类似,也是面向对象,自然也就是存在类和对象(对象是类的实例化)*///1、JS对象var empty = {}; //没有任何属性的对象var point = { x: 0, y: 0 }; //两个属性和值var point2 = { x: point.x, y: point.y } //复杂的属性和值var book = {"main title": "javascript", //属性名字中有空格,必须用字符串表示"sub-title": "The Definitive Guide", //属性名字里有连字符,必须用字...
因为es6语法不兼容部分浏览器,所以要对项目进行配置1.安装依赖npm install babel-loader @babel/preset-env @babel/core core-js -D //第一三方法安装这个npm install @babel/polyfill -D //第二个方法安装这个2.三种方法兼容(1)babel-loader @babel/preset-env @babel/core 兼容 只能兼容基本的语法,但是像是promise语法,无法进行兼容(2)兼容全部js语法 @babel/polyfill 在index.js中引入依赖即可 import ...
//页面加载完成后执行$(function () { getHW();});//当用户改变浏览器大小改变时触发$(window).resize(function () { setHW(); });//每500毫秒运行一次window.setInterval("getH()", 500);//获取页面的高度,并传给父页面的元素function getSubPageH() {var parentWorkDiv = $("#workDiv", parent.document);//工作区DIVvar parentLeftDiv = $("#leftDiv", parent.document); //左侧菜单DIVvar parentTopDiv = $("#topDiv", parent...