- 浏览: 90267 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
zhaohaolin:
哟,龙哥,你还搞C,好高大上的东西啊
xcode初探 -
robinqu:
又改了一些小错误~
[更新20100922]jQuery Location Select 插件- 地址联动、地理检测 -
robinqu:
kimm 写道这个功能不错,就是应用有点局限,内网就不好用了。 ...
[更新20100922]jQuery Location Select 插件- 地址联动、地理检测 -
robinqu:
更新了⋯⋯把代码重写了一次⋯⋯大家可以实现任何种类的联动,以及 ...
[更新20100922]jQuery Location Select 插件- 地址联动、地理检测 -
robinqu:
truth315 写道不好意思了,compu指的是getAre ...
JavaScript Prototype基础
Object、Array是JS的引用型基本属性
枚举Object中的属性:
检查对象中是否有某个属性并赋值:
方法1
方法2
串联数组元素
可以指定用什么字符来串联:
也就是String.spilt()的逆向方法
数组反向
数组排序
默认通过以字母表进行排序。也可以提供排序的函数。
把判定函数当作参数传递给Array.sort(),该函数也有两个函数,例如a,b。
如果a在b的前面,则返回一个小于0的数;
如果a在b的后面,则返回一个大于0的数;
如果两则等效,则返回0。
数组的连接
数组的子集
Arrat.slice()接受两个参数,其返回值是原数组的子数组,由下标为第一个参数,一直到下标为(第二个参数-1)的元素组成
数组的切割
该方法会修改原数组,如果只提供一个参数,那么从下标值为参数的元素(包括这个元素)在原数组中开始删除,该方法返回删除的那些元素组成的数组
如果提供两个参数,那么第一个参数作用不变,第二个参数则限定删除元素的个数
如果提供两个以上的参数,那么从第三个参数开始就是执行了删除操作之后,将第三个参数之后的所有元素,插入到下标为第一个参数的元素的后方
用数组实现Stack
用数组实现只能在前端进出的顺序表
将数组转换为字符串
这是一个对每个元素调用.toString()的过程,并将结果用逗号间隔返回
枚举Object中的属性:
function DisplayPropertyNames(obj) { var names = ""; for(var name in obj) names += name + "\n"; alert(names); }
检查对象中是否有某个属性并赋值:
方法1
// If o has a property named "x", then set it if ("x" in o) o.x = 1;
方法2
// If the property x exists and is not undefined, set it. // !== and === distinguish between undefined and null if (o.x !== undefined) o.x = 1;
串联数组元素
引用
The Array.join() method converts all the elements of an array to strings and concatenates them.
var a = [1, 2, 3]; // Create a new array with these three elements var s = a.join(); // s == "1,2,3"
可以指定用什么字符来串联:
s = a.join(", "); // s == "1, 2, 3"
也就是String.spilt()的逆向方法
数组反向
引用
The Array.reverse() method reverses the order of the elements of an array and returns the reversed array.
var a = new Array(1,2,3); // a[0] = 1, a[1] = 2, a[2] = 3 a.reverse(); // now a[0] = 3, a[1] = 2, a[2] = 1 var s = a.join(); // s == "3,2,1"
数组排序
引用
Array.sort() sorts the elements of an array in place and returns the sorted array.
默认通过以字母表进行排序。也可以提供排序的函数。
引用
To sort an array into some order other than alphabetical, you must pass a comparison function as an argument to sort().
This function decides which of its two arguments should appear first in the sorted array.
If the first argument should appear before the second, the comparison function should return a number less than zero.
If the first argument should appear after the second in the sorted array, the function should return a number greater than zero.
And if the two values are equivalent (i.e., if their order is irrelevant), the comparison function should return 0.
This function decides which of its two arguments should appear first in the sorted array.
If the first argument should appear before the second, the comparison function should return a number less than zero.
If the first argument should appear after the second in the sorted array, the function should return a number greater than zero.
And if the two values are equivalent (i.e., if their order is irrelevant), the comparison function should return 0.
把判定函数当作参数传递给Array.sort(),该函数也有两个函数,例如a,b。
如果a在b的前面,则返回一个小于0的数;
如果a在b的后面,则返回一个大于0的数;
如果两则等效,则返回0。
var a = [33, 4, 1111, 222]; a.sort(); // Alphabetical order: 1111, 222, 33, 4 a.sort(function(a,b) { // Numerical order: 4, 33, 222, 1111 return a-b; // Returns < 0, 0, or > 0, depending on order });
数组的连接
引用
The Array.concat() method creates and returns a new array that contains the elements of the original array on which concat() was invoked, followed by each of the arguments to concat().
var a = [1,2,3]; a.concat(4, 5) // Returns [1,2,3,4,5] a.concat([4,5]); // Returns [1,2,3,4,5] a.concat([4,5],[6,7]) // Returns [1,2,3,4,5,6,7] a.concat(4, [5,[6,7]]) // Returns [1,2,3,4,5,[6,7]]
数组的子集
引用
The Array.slice() method returns a slice, or subarray, of the specified array. Its two arguments specify the start and end of the slice to be returned. The returned array contains the element specified by the first argument and all subsequent elements up to, but not including, the element specified by the second argument.
Arrat.slice()接受两个参数,其返回值是原数组的子数组,由下标为第一个参数,一直到下标为(第二个参数-1)的元素组成
var a = [1,2,3,4,5]; a.slice(0,3); // Returns [1,2,3] a.slice(3); // Returns [4,5] a.slice(1,-1); // Returns [2,3,4] a.slice(-3,-2); // Returns [3]
数组的切割
引用
The Array.splice() method is a general-purpose method for inserting or removing elements from an array. splice() modifies the array in place; it does not return a new array, as slice() and concat() do.
该方法会修改原数组,如果只提供一个参数,那么从下标值为参数的元素(包括这个元素)在原数组中开始删除,该方法返回删除的那些元素组成的数组
如果提供两个参数,那么第一个参数作用不变,第二个参数则限定删除元素的个数
var a = [1,2,3,4,5,6,7,8]; a.splice(4); // Returns [5,6,7,8]; a is [1,2,3,4] a.splice(1,2); // Returns [2,3]; a is [1,4] a.splice(1,1); // Returns [4]; a is [1]
如果提供两个以上的参数,那么从第三个参数开始就是执行了删除操作之后,将第三个参数之后的所有元素,插入到下标为第一个参数的元素的后方
var a = [1,2,3,4,5]; a.splice(2,0,'a','b'); // Returns []; a is [1,2,'a','b',3,4,5] a.splice(2,2,[1,2],3); // Returns ['a','b']; a is [1,2,[1,2],3,3,4,5]
用数组实现Stack
引用
The push() and pop() methods allow you to work with arrays as if they were stacks.
var stack = []; // stack: [] stack.push(1,2); // stack: [1,2] Returns 2 stack.pop(); // stack: [1] Returns 2 stack.push(3); // stack: [1,3] Returns 2 stack.pop(); // stack: [1] Returns 3 stack.push([4,5]); // stack: [1,[4,5]] Returns 2 stack.pop() // stack: [1] Returns [4,5] stack.pop(); // stack: [] Returns 1
用数组实现只能在前端进出的顺序表
引用
The unshift() and shift() methods behave much like push() and pop(), except that they insert and remove elements from the beginning of an array rather than from the end.
var a = []; // a:[] a.unshift(1); // a:[1] Returns: 1 a.unshift(22); // a:[22,1] Returns: 2 a.shift(); // a:[1] Returns: 22 a.unshift(3,[4,5]); // a:[3,[4,5],1] Returns: 3 a.shift(); // a:[[4,5],1] Returns: 3 a.shift(); // a:[1] Returns: [4,5] a.shift(); // a:[] Returns: 1
将数组转换为字符串
引用
An array, like any JavaScript object, has a toString() method. For an array, this method converts each of its elements to a string (calling the toString() methods of its elements, if necessary) and outputs a comma-separated list of those strings. Note that the output does not include square brackets or any other sort of delimiter around the array value.
这是一个对每个元素调用.toString()的过程,并将结果用逗号间隔返回
[1,2,3].toString() // Yields '1,2,3' ["a", "b", "c"].toString() // Yields 'a,b,c' [1, [2,'c']].toString() // Yields '1,2,c'
发表评论
-
WebApp在移动端的涅盘- 另类的移动端应用程序开发
2010-09-27 22:35 4515同时欢迎到我的BLOG讨 ... -
ScriptDoc的Notation规则
2010-01-23 19:37 1788这个还是蛮重要的,以前就一直很羡慕Java有一套标准来着: 转 ... -
关于google.setOnLoadCallback()的一点研究
2010-01-12 10:01 6151google.setOnLoadCallback()是goog ... -
ECMA 推出 JavaScript 5
2009-12-28 21:17 1646转发自http://www.comsharp.co ... -
Javascript 事件编程 (二)
2009-09-18 21:28 1639Event Handlers and the this Key ... -
Javascript 事件编程 (一)
2009-09-04 15:27 1270Events and Event Handling 事件和事件 ... -
Javascript CSS编程 (一)元素定位、透明、内联样式
2009-09-03 14:29 2078Querying Element Position and S ... -
Javascript CSS编程 (二)Computed Styles、Class修改、操作样式表
2009-09-03 13:15 5371Scripting Computed Styles 计算样式 ... -
Javascript DHTML动画
2009-09-03 13:00 1239JS实现的动画效果多半 ... -
Javascript IE4 DOM
2009-09-02 17:14 1026很多IE独有的DOM特性是沿袭自IE4的,所以有必要看看IE4 ... -
Javascript 操控选择文本
2009-09-02 17:02 1277Querying Selected Text 查询选择的文本 ... -
Javascript 寻找文档元素
2009-09-02 16:51 2330Finding Elements in a Document ... -
Javascript 窗口的几何关系和相关方法、属性
2009-09-02 10:47 1142Window Geometry 窗口几何关系 引用Scree ... -
JavaScript window下面的常用函数、属性
2009-09-02 10:30 1210我们常用的一些函数都是全局对象window下面的。这里将其梳理 ... -
JavaScript 在浏览器中的相关概念:执行环境、引入脚本、安全策略等
2009-09-02 09:32 1387The Window as Global Execution ... -
JavaScript Namespace模拟
2009-07-15 18:53 1572做JavaScript的大型项目比较痛苦,它没有namespa ... -
JavaScript Class模拟深入 - Duck Typing 和 Class相关的工具类
2009-07-15 17:16 1793Duck Typing 引用If it implements ... -
JavaScript 判定对象类型
2009-07-15 16:53 1384判定JS的对象类型基本 ... -
JavaScript Class模拟深入 - 继承、子类
2009-07-15 16:27 1731Superclasses and Subclasses ... -
javascript this 关键字小提示
2009-07-14 22:01 1191来自:http://www.macji.com/2009/01 ...
相关推荐
JavaScript是一种基于原型的脚本语言,它具备灵活而强大的对象和数组引用类型。对象和数组是引用类型,这意味着它们存储的是引用的值而不是实际的数据值。在JavaScript中,对象和数组是用于存储和操作数据的关键构建...
本小册"JavaScript对象经典小册 chm"深入探讨了JavaScript中的核心概念——对象和数组,旨在帮助开发者更好地理解和掌握这些基础知识。 一、JavaScript对象 1. 对象概述:JavaScript对象是一种数据结构,它由键值对...
因为本质上,关联数组创建的其实是Array对象的属性。 在JavaScript中,推荐使用对象字面量的方式来创建对象,因为这样代码更加直观易懂。而在处理复杂数据结构时,对象的灵活性更高,因为对象可以存储不同类型的...
为了实现一个完整的深拷贝,可以自定义一个函数,递归地遍历并复制所有属性,包括嵌套的对象和数组。 ```javascript function deepCopy(obj) { if (obj === null || typeof obj !== 'object') return obj; let ...
下面我们将深入探讨JavaScript中的对象和数组。 1. **对象(Object)** - **封装**:JavaScript对象允许我们将数据和功能(即属性和方法)封装在一起。例如,我们可以创建一个`box`对象,其中包含`name`、`age`属性...
JavaScript中的对象和数组是两种关键的数据结构,它们与基本数据类型如字符串和数字有显著区别。对象是一个命名值的集合,这些值可以是各种类型的,包括原始类型和复杂类型。对象内部的值通过属性名来访问,这些属性...
在JavaScript编程中,获取对象和数组的属性键值(key)和对应值(value)是一项基本操作。本文将详细介绍如何实现这一功能,并提供相应的代码示例。 首先,我们需要理解JavaScript中的对象和数组。对象是一种键值对...
在这份"JavaScript对象与数组参考大全"中,我们将深入探讨JavaScript的核心概念——对象和数组,它们是JavaScript编程的基础,也是理解和编写复杂应用的关键。 一、JavaScript对象 1. 对象定义:JavaScript对象是一...
但是,typeof 不能区分对象和数组,因为它们都会返回 "object"。因此,在需要区分对象和数组的情况下,我们不推荐使用 typeof。 在处理接口数据时,开发者应根据实际情况选择合适的方法来判断数据类型。如果接口...
在JavaScript(JS)编程语言中,对象和数组是两种核心的数据结构,它们在构建复杂的程序逻辑和数据存储中起着至关重要的作用。本参考大全将深入探讨这两种数据类型及其常用方法,帮助开发者更好地理解和运用。 ### ...
"JS对象与数组参考大全.txt"可能是一份文本格式的文档,专注于对象和数组的比较和使用,包括两者的异同、转换方法以及在实际编程中的应用技巧。 通过学习这个压缩包中的文档,开发者不仅能深入理解JavaScript对象的...
JavaScript中的对象和数组是两种基本的数据结构,它们在日常编程中扮演着重要角色。对象,作为JavaScript的核心特性,是无序的键值对集合,可以存储任何类型的数据,包括基本类型和引用类型。所有JavaScript对象都...
JSON主要有两种基本结构:对象(Object)和数组(Array)。对象是由花括号 `{}` 包围的一组键值对,键与值之间用冒号 `:` 分隔,各个键值对之间用逗号 `,` 分隔。数组由方括号 `[]` 包围,元素之间同样用逗号 `,` ...
同样,对于对象,ES6引入了Object.keys()、Object.values()和Object.entries()方法,分别用于获取对象的所有键、值和键值对数组。 在实际开发中,理解和熟练掌握JavaScript的数组和对象是至关重要的,它们是构建...
用于测试目的JavaScript对象和数组。 正在安装 npm install --save-dev test-constructs 快速开始 const tc = require ( 'test-constructs' ) console . log ( tc . rndObject ( ) ) // <= A random object ...
代码如下: /* 数组和对象 【JavaScript 权威指南 第五版】 */ /* 对象: 是一个无序属性集合, 每个属性都有自己的名字和值 */ /* 创建对象简单方法, 对象直接量 */ var obj = {}; var obj = {name: ‘maxthon’}; ...