#Asc

深入理解javascript对象系列第二篇——属性操作

  对于对象来说,属性操作是绕不开的话题。类似于“增删改查”的基本操作,属性操作分为属性查询、属性设置、属性删除,还包括属性继承。本文是对象系列的第二篇——属性操作 属性查询  属性查询一般有两种方法,包括点运算符和方括号运算符varo={p:'HelloWor...

深入理解javascript对象系列第一篇——初识对象

  javascript中的难点是函数、对象和继承,前面已经介绍过函数系列。从本系列开始介绍对象部分,本文是该系列的第一篇——初识对象 对象定义  javascript的基本数据类型包括undefined、null、boolean、string、number和object。对象和其他基...

深入理解javascript函数系列第四篇——ES6函数扩展

  ES6标准关于函数扩展部分,主要涉及以下四个方面:参数默认值、rest参数、扩展运算符和箭头函数 参数默认值  一般地,为参数设置默认值需进行如下设置functionlog(x,y){y=y||'World';console.log(x,y);}  但这样设置实际上是有问题的,如果y的值本身是假值(包括f...

深入理解javascript作用域系列第五篇——一张图理解执行环境和作用域

  对于执行环境(executioncontext)和作用域(scope)并不容易区分,甚至很多人认为它们就是一回事,只是高程和犀牛书关于作用域的两种不同翻译而已。但实际上,它们并不相同,却相互纠缠在一起。本文先用一张图开宗明义,然后进行术语的简单解释,最后根据图示内容进行详细说明 图示查看大图 概...

深入理解javascript函数系列第三篇——属性和方法

  函数是javascript中特殊的对象,可以拥有属性和方法,就像普通的对象拥有属性和方法一样。甚至可以用Function()构造函数来创建新的函数对象。本文是深入理解javascript函数系列第三篇——属性和方法 属性【length属性】  函数系列第二篇中介绍过,argumen...

深入理解javascript函数系列第二篇——函数参数

  javascript函数的参数与大多数其他语言的函数的参数有所不同。函数不介意传递进来多少个参数,也不在乎传进来的参数是什么数据类型,甚至可以不传参数。本文是深入理解javascript函数系列第二篇——函数参数 arguments  javascript中的函数定义并未指定函数形...

深入理解javascript函数系列第一篇——函数概述

  函数对任何一门语言来说都是核心的概念。通过函数可以封装任意多条语句,而且可以在任何地方、任何时候调用执行。在javascript里,函数即对象,程序可以随意操控它们。函数可以嵌套在其他函数中定义,这样它们就可以访问它们被定义时所处的作用域中的任何变量,它给javascript带来了非常强劲的编程能力。本文是深入理解...

深入理解javascript作用域系列第四篇——块作用域

  尽管函数作用域是最常见的作用域单元,也是现行大多数javascript最普遍的设计方法,但其他类型的作用域单元也是存在的,并且通过使用其他类型的作用域单元甚至可以实现维护起来更加优秀、简洁的代码,比如块作用域。随着ES6的推广,块作用域也将用得越来越广泛。本文是深入理解javascript作用域系列第四篇&mdas...

深入理解javascript作用域系列第三篇——声明提升(hoisting)

  一般认为,javascript代码在执行时是由上到下一行一行执行的。但实际上这并不完全正确,主要是因为声明提升的存在。本文是深入理解javascript作用域系列第三篇——声明提升(hoisting) 变量声明提升a=2;vara;console.log(a);  直觉上,会认为是...

深入理解javascript作用域系列第二篇——词法作用域和动态作用域

  大多数时候,我们对作用域产生混乱的主要原因是分不清楚应该按照函数位置的嵌套顺序,还是按照函数的调用顺序进行变量查找。再加上this机制的干扰,使得变量查找极易出错。这实际上是由两种作用域工作模型导致的,作用域分为词法作用域和动态作用域,分清这两种作用域模型就能够对变量查找过程有清晰的认识。本文是深入理解javasc...

深入理解javascript作用域系列第一篇——内部原理

  javascript拥有一套设计良好的规则来存储变量,并且之后可以方便地找到这些变量,这套规则被称为作用域。作用域貌似简单,实则复杂,由于作用域与this机制非常容易混淆,使得理解作用域的原理更为重要。本文是深入理解javascript作用域系列的第一篇——内部原理  内部原理分成编译、执行...

javascript中数组和字符串的方法比较

  字符串和数组有很多的相同之处,它们的方法众多,且相似度很高;但它们又有不同之处,字符串是不可变值,于是可以把其看作只读的数组。本文将对字符串和数组的类似方法进行比较 可索引  ECMAScript5定义了一种访问字符的方法,使用方括号加数字索引来访问字符串中的特定字符  可索引的字符串的最大的好处就是简单...

javascript中数组的22种方法

  数组总共有22种方法,本文将其分为对象继承方法、数组转换方法、栈和队列方法、数组排序方法、数组拼接方法、创建子数组方法、数组删改方法、数组位置方法、数组归并方法和数组迭代方法共10类来进行详细介绍 对象继承方法  数组是一种特殊的对象,继承了对象Object的toString()、toLocaleStri...

什么才是正确的javascript数组检测方式

  对于确定某个对象是不是数组,一直是数组的一个经典问题。本文专门将该问题择出来,介绍什么才是正确的javascript数组检测方式  typeof  首先,使用最常用的类型检测工具——typeof运算符vararr=[1,2,3];console.log(typeofarr...

javascript类型系统——数组array

  除了对象之外,数组Array类型可能是javascript中最常用的类型了。而且,javascript中的数组与其他多数语言中的数组有着相当大的区别。本文将介绍javascript中的数组Array类型 创建数组  有两种创建数组的方法:使用字面量语法和使用Array()构造函数【字面量】  使用数组字面...
首页上一页...7071727374...下一页尾页