Welcome 微信登录

首页 / 脚本样式 / JavaScript

关于JS管理作用域的问题

关于JS管理作用域的问题

关键字:标识符、执行上下文、作用域、作用域链、变量对象、活动对象理论知识 理解JavaScript如何管理作用域和作用域链很重要。因为在作用域链中要查找的变量对象的个数直接影响标识符解析的性能。标识符在作用域链中的位置越深,查找和访问它所需的时间越长;如果作用域管理不当,就会给脚本的执行时间带来负面影响。 当执行JavaScript代码时,JavaScript引擎会创建一个执行上下文(Execution Context)。执行上下文(有时被称为作用域)设定...
裁剪字符串trim()自定义改进版

裁剪字符串trim()自定义改进版

ECMAScript5已经为字符串定义了原生的trim方法。这个方法可能比会比本文的任何版本的都要快。建议在支持的浏览器中使用原生函数。下面讲述的是自定义trim()函数遇到的问题,改进的过程。功夫在不断淬炼中才能醇正。JavaScript中没有用于移除字符串头尾空白的原生修剪方法。最常见的自定义trim()函数实现如下所示:复制代码 代码如下:function trim(text) {return text.replace(/^s+|s+$/g, ‘")...
图片无缝滚动代码(向左/向下/向上)

图片无缝滚动代码(向左/向下/向上)

想必大家都注意到<marquee>的不循环滚动,所以出现了很多替代脚本,或iframe或JS输出<marquee>,不管怎么做,都略显麻烦。下面说一下这个相对简单的实现思路:一个设定宽度并且隐藏超出它宽度的内容的容器demo,里面放demo1和 demo2,demo1是滚动内容,demo2为demo1的直接克隆,通过不断改变demo1的scrollTop或者scrollLeft达到滚动的目的,当滚动至demo1与demo2的交界处时...
将字符串转换成gb2312或者utf-8编码的参数(js版)

将字符串转换成gb2312或者utf-8编码的参数(js版)

在很多时候,我们直接在url中传递中文参数时,读到的中文都是乱码,那么我们应该怎么将这些参数转换呢? 下面我们来介绍一下方法 1、我们新建一个 UrlEncode.js 然后将下面的代码拷贝进去 复制代码 代码如下: //JS版的Server.UrlEncode编码函数 String.prototype.UrlEncodeGB2312 = function () { var str = this; str = str.replace(/./g, funct...
javascript中的delete使用详解

javascript中的delete使用详解

在这篇文章中作者从《JavaScript面向对象编程指南》一书中关于 delete 的错误讲起,详细讲述了关于 delete 操作的实现, 局限以及在不同浏览器和插件(这里指 firebug)中的表现。下面翻译其中的主要部分。...书中声称“函数就像一个普通的变量那样——可以拷贝到不同变量,甚至被删除”并附上了下面的代码片段作为说明:复制代码 代码如下:>>> var sum = function(a, b) {return a+b;};...
浅谈关于JavaScript的语言特性分析

浅谈关于JavaScript的语言特性分析

前言在JavaScript中,作用域、上下文、闭包、函数等算是精华中的精华了。对于初级JSer来说,是进阶必备。对于前端攻城师来说,只有静下心来,理解了这些精华,才能写出优雅的代码。本文旨在总结容易忘记的重要知识,不会讲基本的概念。如果对基本知识不太熟悉,就去翻下《 JavaScript权威指南》吧~语言特性函数表达式先看代码段:复制代码 代码如下:[javascript] view plaincopyprint?var f = function foo(...
在JavaScript中typeof的用途介绍

在JavaScript中typeof的用途介绍

JavaScript 中的 typeof 其实非常复杂,它可以用来做很多事情,但同时也有很多怪异的表现。 本文列举出了它的多个用法,而且还指出了存在的问题以及解决办法。阅读本文的前提是,你现在应该已经知道原始值和对象值的区别了。检查一个变量是否存在,是否有值typeof在两种情况下会返回 "undefined":1.变量没有被声明2.变量的值是 undefined例如:复制代码 代码如下:> typeof undeclaredVariable ===...
在JavaScript并非所有的一切都是对象

在JavaScript并非所有的一切都是对象

虽然很多语言宣称:“一切皆是对象”,但是 javascript 中,并不是所有的值都是对象。原始值 vs 对象javascript 中的值可以被划分为两大类:原始值(primitive)和对象(object)。定义javascript 的两种值的定义:下面的值是原始值。1.字符串2.数字:在 JavaScript 中所有的数字都是浮点数3.布尔值4.null5.undefined所有其它的值都是对象(object)。对象可以进一步划分:1.原始值的包装器:...
谈谈关于JavaScript 中的 MVC 模式

谈谈关于JavaScript 中的 MVC 模式

原文:Model-View-Controller (MVC) with JavaScript作者:Alex@Net译文:JavaScript 的 MVC 模式译者:justjavac本文介绍了模型-视图-控制器模式在 JavaScript 中的实现。我喜欢 JavaScript,因为它是在世界上最灵活的语言之一。 在 JavaScript 中,程序员可以根据自己的口味选择编程风格:面向过程或面向对象。 如果你是一个重口味,JavaScript 一样可以应付...
你的 mixin 真的兼容 ECMAScript 5 吗?

你的 mixin 真的兼容 ECMAScript 5 吗?

我最近在与客户合作的项目中,需要充分利用的 ECMAScript 5,在此我遇到一个非常有趣的问题。 该问题源于一个非常常见的模式: mixin , 也就是在 JavaScript 中把一个对象的属性或者方法 mixin 到另一个。大多数 mixin 的功能看起来像这样:复制代码 代码如下:function mixin(receiver, supplier) { for (var property in supplier) { if (supplier.h...
jQuery实用基础超详细介绍

jQuery实用基础超详细介绍

一、jQuery 简介jQuery 是继 Prototype 之后又一个优秀的 JavaScript 库jQuery 理念: 写得少, 做得多. 优势如下:轻量级强大的选择器出色的 DOM 操作的封装可靠的事件处理机制完善的 Ajax出色的浏览器兼容性链式操作方式……第一个案例二、jQuery 对象jQuery 对象就是通过 jQuery ($()) 包装 DOM 对象后产生的对象jQuery 对象是 jQuery 独有的. 如果一个对象是 jQuery ...
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)

Jquery实现点击切换图片并隐藏显示内容(2种方法实现)

我们的电脑屏幕大小是固定的,那么如何在有限的空间放更多的内容呢? 我们应该给用户足够的选择权,当他们想要看某些内容的时候可以很快的看到,不想看的时候就把他隐藏。于是就有了题目说的这个问题。其实这个问题很简单,那么,之所以拿出来跟大家分享,一方面我们大家相互交流,另一方面,也是对自己的学习的一种总结。 这里我想到了两种方法,给大家分享一下。 好了不多说,下面看代码: 第一种,是常规的方法: [javascript] 复制代码 代码如下: $(function...
<< 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 >>