关于JavaScript维基的信息

前端怎么学习javascript

a) 框架。推荐jQuery,简单易用,我的第一web项目就是在w3school简单学习后,直接上手jQuery完成的,真的很难简单,很好用。jQuery适用环境有限,对于那些对性能要求很高的页面无法胜任。推荐了解一下 YUI 或百度的 tangram ,都很好用,学习方法也很简单,照着产品文档做几个页面就行了,不用面面俱到,以后遇到问题查文档就行了。框架可以帮你屏蔽浏览器的差异性,让你能更专注与web开发学习的精髓部分。

创新互联不只是一家网站建设的网络公司;我们对营销、技术、服务都有自己独特见解,公司采取“创意+综合+营销”一体化的方式为您提供更专业的服务!我们经历的每一步也许不一定是最完美的,但每一步都有值得深思的意义。我们珍视每一份信任,关注我们的成都网站设计、网站制作、外贸营销网站建设质量和服务品质,在得到用户满意的同时,也能得到同行业的专业认可,能够为行业创新发展助力。未来将继续专注于技术创新,服务升级,满足企业一站式成都全网营销推广需求,让再小的高端网站设计也能产生价值!

b) javascript 语言范式。这个名字可能并不恰当,只是我找不到可以描述“面向对象”,“函数式”这个两个概念的概念。javascript不完全是一个面向对象的语言,它的很多设计理念都有函数编程语言的影子,甚至说如果你不用面向对象,完全可以把它理解成一门函数式编程语言。javascript的很多语言特性,都是因为他具有函数是语言的特点才存在的。这部分推荐先学习面向对象的基本理论,对封装,继承,多态等概念要理解,维基百科,百度百科会是你的帮手,另外推荐《object oriented javascript》,应该有中文版。对与函数式编程我了解的也不系统,不好多说,可以自己百度一下。

c) javascript 语言内部机制。必须弄清如下概念:js中变量的作用域,变量传递方式,函数的定义环境与执行环境,闭包,函数的四种调用方式(一般函数,对象的方法,apply,call),以及四种调用方式下,‘this'指向的是谁。这部分内容你会在《javascript语言精粹》中详细了解。另外,你必须理解json。

d) dom编程,这个web前端工程师的核心技能之一。必读《dom编程艺术》,另外《高性能javascript》这本书中关于dom编程的部分讲的也很好。

e) ajax编程,这是另一核心技术。ajax建议在网上查些资料,了解这个概念的来龙去脉,百度百科,维基百科上的内容就足够了。真正编程是很容易的,如今几乎所有框架都对ajax有良好的封装,编程并不复杂。

f) 了解浏览器差异性。这部分包括css和js两部分,浏览器差异内容很多,建议在实践中多多积累。

求wiki网站的源码

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns="" xml:lang="zh" lang="zh" dir="ltr"

head

meta http-equiv="Content-Type" content="text/html; charset=utf-8" /

meta name="generator" content="MediaWiki 1.13.2" /

meta name="keywords" content="首页,About this site,Communication/zh,Conduct,Download,FC,Linux,Linux不是Windows/zh,Newcomer,Qref,Ubuntu" /

link rel="shortcut icon" href="/favicon.ico" /

link rel="search" type="application/opensearchdescription+xml" href="/opensearch_desc.php" title="Ubuntu中文 (zh)" /

link rel="alternate" type="application/rss+xml" title="Ubuntu中文的RSS订阅" href=";feed=rss" /

link rel="alternate" type="application/atom+xml" title="Ubuntu中文的Atom订阅" href=";feed=atom" /

title首页 - Ubuntu中文/title

style type="text/css" media="screen,projection"/*![CDATA[*/ @import "/skins/ubuntuchina/main.css?164"; /*]]*//style

link rel="stylesheet" type="text/css" media="print" href="/skins/common/commonPrint.css?164" /

link rel="stylesheet" type="text/css" media="handheld" href="/skins/ubuntuchina/handheld.css?164" /

!--[if lt IE 5.5000]style type="text/css"@import "/skins/ubuntuchina/IE50Fixes.css?164";/style![endif]--

!--[if IE 5.5000]style type="text/css"@import "/skins/ubuntuchina/IE55Fixes.css?164";/style![endif]--

!--[if IE 6]style type="text/css"@import "/skins/ubuntuchina/IE60Fixes.css?164";/style![endif]--

!--[if IE 7]style type="text/css"@import "/skins/ubuntuchina/IE70Fixes.css?164";/style![endif]--

!--[if lt IE 7]script type="text/javascript" src="/skins/common/IEFixes.js?164"/script

meta http-equiv="imagetoolbar" content="no" /![endif]--

script type= "text/javascript"/*![CDATA[*/

var skin = "ubuntuchina";

var stylepath = "/skins";

var wgArticlePath = "/$1";

var wgScriptPath = "";

var wgScript = "/index.php";

var wgVariantArticlePath = false;

var wgActionPaths = [];

var wgServer = "";

var wgCanonicalNamespace = "";

var wgCanonicalSpecialPageName = false;

var wgNamespaceNumber = 0;

var wgPageName = "首页";

var wgTitle = "首页";

var wgAction = "view";

var wgArticleId = "25476";

var wgIsArticle = true;

var wgUserName = null;

var wgUserGroups = null;

var wgUserLanguage = "zh-cn";

var wgContentLanguage = "zh";

var wgBreakFrames = false;

var wgCurRevisionId = "112804";

var wgVersion = "1.13.2";

var wgEnableAPI = true;

var wgEnableWriteAPI = false;

var wgRestrictionEdit = [];

var wgRestrictionMove = [];

/*]]*//script

script type="text/javascript" src="/skins/common/wikibits.js?164"!-- wikibits js --/script

script type="text/javascript" src="/index.php?title=-action=rawgen=jsuseskin=ubuntuchina"!-- site js --/script

style type="text/css"/*![CDATA[*/

@import "/index.php?title=MediaWiki:Common.cssusemsgcache=yesaction=rawctype=text/csssmaxage=18000";

@import "/index.php?title=MediaWiki:Ubuntuchina.cssusemsgcache=yesaction=rawctype=text/csssmaxage=18000";

@import "/index.php?title=-action=rawgen=cssmaxage=18000useskin=ubuntuchina";

/*]]*//style

!-- Head Scripts --

什么是脚本?

脚本最初是从演艺界过来的,指表演戏剧、拍摄电影等所依据的底本或书稿的底本。

在计IT行业,脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序。

1、脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。脚本通常可以由应用程序临时调用并执行。各类脚本目前被广泛地应用于网页设计中,因为脚本不仅可以减小网页的规模和提高网页浏览速度,而且可以丰富网页的表现,如动画、声音等。

2、动态程序一般有两种实现方式,一是二进制方式,一是脚本方式。

二进制方式是先将我们编写的程序进行编译,变成机器可识别的指令代码(如.exe文件),然后再执行。这种编译好的程序我们只能执行、使用,却看不到他的程序内容。

脚本简单地说就是一条条的文字命令,这些文字命令是我们可以看到的(如可以用记事本打开查看、编辑),脚本程序在执行时,是由系统的一个解释器,将其一条条的翻译成机器可识别的指令,并按程序顺序执行。因为脚本在执行时多了一道翻译的过程,所以它比二进制程序执行效率要稍低一些。

扩展资料:

脚本(Script)实际上就是程序,一般都是有应用程序提供的编程语言。应用程序包括浏览器(javascript、VBScript)、多媒体创作工具,应用程序的宏和创作系统的批处理语言也可以归入脚本之类。

脚本同我们平时使用的VB、C语言的区别主要是:

脚本语法比较简单,比较容易掌握;脚本与应用程序密切相关,所以包括相对应用程序自身的功能;脚本一般不具备通用性,所能处理的问题范围有限。脚本就是源程序,就是代码程序。

常见的脚本语言有C Shell、JavaScript、Nuva、Perl、PHP、Python、Ruby、Tcl、VBScript、CSS。

参考资料:

百度百科词条-脚本语言

哪里可以下载到WIKI系统?

推荐使用mediawiki,资料附后。wiki建站专题站点可访问天下维客 ,有中文的wiki建站综述、具体过程、相关技术资料以及其他各种wiki程序的介绍等。

下面是节选的mediawiki资料:

MediaWiki全球最著名的开源wiki引擎,运行于PHP+MySQL环境。从2002年2月25日被作为维基百科全书的系统软件,并有大量其他应用实例。目前MediaWiki的开发得到维基媒体基金会的支持。

MeidaWiki一直保值着持续更新,当前最新版本为1.4.13(2006-1-5)和1.5.7(2006-3-2)稳定版本。MediaWiki的原作者为德国的Magnus Manske。

目录 [隐藏]

1 为什么要选择mediawiki来做wiki网站?

1.1 mediawiki的弱点

1.2 mediawiki系统特色

2 使用提示

3 版本

4 参考资料

4.1 下载网址

[编辑]为什么要选择mediawiki来做wiki网站?

经受过重量级应用的考验,功能丰富却架设简单。

全世界最大的wiki项目维基百科是使用mediawiki的成功范例,数据量、访问量都超级庞大

mediawiki的功能非常丰富,支持多语言版本,充分满足知识站点的需要

运行环境要求很低,架设过程简洁,即使新手也可以迅速建立自己的站点

最大的wiki程序社区:

mediawiki是目前应用最广的wiki程序,数以万计的网站在使用它,很容易找到范例站点

有大量的热心参与人员参与研究,资料多,容易找到互相交流的朋友。例如QQ群3680101(技术群)。

持续开发,程序特性功能不断完善,保证未来的支持

mediawiki是受到维基媒体基金会支持的开源项目,在功能、性能、安全方面将不断优化

[编辑]mediawiki的弱点

后台管理功能不是很完善,仅通过简单的特殊页面完成这些功能。

一般环境下,mediawiki的运行速度相对其他wiki程序要差很多。mediawiki的目标是为维基媒体项目服务,很多华丽的性能特征要在高端设备环境(多服务器,多数据库,反向缓冲squid服务器阵列,大量额外的PHP缓冲引擎)中才能体现。(参见[1])

在界面方面关注不够,导致外观美化的修改繁琐,甚至需要一定的技术背景

wiki引擎

wiki引擎主条目

wiki引擎的流行度

常见中文wiki引擎:

MediaWiki是最流行的Wiki引擎,支持多语种。用它做的网站数以十万计。

MoinMoin平实稳重,支持中文和多语种,插件丰富。Python环境。

PmWiki:无需数据库的小巧程序。架设简单,权限控制、插件扩展都不错。PHP环境。

TiddlyWiki:用javascript写成精巧程序。单一文件,但有出色的动态效果。

TWiki:基于Perl的企业级协作平台

CooCooWakka:早期的小型中文wiki引擎

[编辑]mediawiki系统特色

wiki的重要特征

记录所有的改动版本,能方便的查阅历史更新记录,这使得开放性编辑成为可能

自动产生链接,编辑文本中中括号中的内容(如“[[X条目]]”)将自动产生链接

允许使用模板,方便对相同内容的重复使用、更新

支持分类,并根据分类在不同的文章之间自动产生关联

允许每个用户自行选择系统外观

[编辑]使用提示

MediaWiki的站点架设问题请见mediawiki建站。

web前端javascript能实现什么算法或者计算

在Web开发中,JavaScript很重要,算法也很重要。下面整理了一下一些常见的算法在JavaScript下的实现,包括二分法、求字符串长度、数组去重、插入排序、选择排序、希尔排序、快速排序、冒泡法等等。仅仅是为了练手,不保证高效与美观,或许还有Bug,有时间再完善吧。

1.二分法:

function binary(items,value){

var startIndex=0,

stopIndex=items.length-1,

midlleIndex=(startIndex+stopIndex)1;

while(items[middleIndex]!=value startIndex

if(items[middleIndex]value){

stopIndex=middleIndex-1;

}else{

startIndex=middleIndex+1;

}

middleIndex=(startIndex+stopIndex)1;

}

return items[middleIndex]!=value ? false:true;

}

2.十六进制颜色值的随机生成:

function randomColor(){

var arrHex=["0","2","3","4","5","6","7","8","9","a","b","c","d"],

strHex="#",

index;

for(var i=0;i 6; i++){

index=Math.round(Math.random()*15);

strHex+=arrHex[index];

}

return strHex;

}

一个求字符串长度的方法:

function GetBytes(str){

var len=str.length,

bytes=len;

for(var i=0;i len;i++){

if(str.CharCodeAt255){

bytes++;

}

}

return bytes;

}

3.js实现数组去重:

Array.protype.delRepeat=function(){

var newArray=new Array();

var len=this.length;

for(var i=0;i len;i++){

for(var j=i+1;j len;j++)

{

if(this[i]==this[j])

{

++i;

}

}

newArray.push(this[i]);

}

return newArray;

}

4.插入排序。所谓的插入排序,就是将序列中的第一个元素看成一个有序的子序列,然后不段向后比较交换比较交换。

function insertSort(arr){

var key;

for(var j = 1; j arr.length ; j++){

//排好序的

var i = j - 1;

key = arr[j];

while(i = 0 arr[i] key){

arr[i + 1] = arr[i];

i --;

}

arr[i + 1] = key;

}

return arr;

}

5.选择排序。其实基本的思想就是从待排序的数组中选择最小或者最大的,放在起始位置,然后从剩下的数组中选择最小或者最大的排在这公司数的后面。

function selectionSort(data)

{

var i, j, min, temp , count=data.length;

for(i = 0; i count - 1; i++) {

/* find the minimum */

min = i;

for (j = i+1; j count; j++)

{

if (data[j] data[min])

{ min = j;}

}

/* swap data[i] and data[min] */

temp = data[i];

data[i] = data[min];

data[min] = temp;

}

return data;

}

6.希尔排序,也称递减增量排序算法。其实说到底也是插入排序的变种。

function shellSort(array){

var stepArr = [1750, 701, 301, 132, 57, 23, 10, 4, 1]; //

reverse()在维基上看到这个最优的步长较小数组

var i = 0;

var stepArrLength = stepArr.length;

var len = array.length;

var len2 = parseInt(len/2);

for(;i stepArrLength; i++){

if(stepArr[i] len2){

continue;

}

stepSort(stepArr[i]);

}

// 排序一个步长

function stepSort(step){

//console.log(step) 使用的步长统计

var i = 0, j = 0, f, tem, key;

var stepLen = len%step 0 ? parseInt(len/step) + 1 : len/step;

for(;i step; i++){// 依次循环列

for(j=1;/*j stepLen */step * j + i len;

j++){//依次循环每列的每行

tem = f = step * j + i;

key = array[f];

while((tem-=step) = 0){// 依次向上查找

if(array[tem] key){

array[tem+step] = array[tem];

}else{

break;

}

}

array[tem + step ] = key;

}

}

}

return array;

}

7.快速排序。其实说到底快速排序算法就系对冒泡排序的一种改进,采用的就是算法理论中的分治递归的思想,说得明白点,它的做法就是:通过一趟排序将待排序的纪录分割成两部分,其中一部分的纪录值比另外一部分的纪录值要小,就可以继续分别对这两部分纪录进行排序;不段的递归实施上面两个操作,从而实现纪录值的排序。

function quickSort(arr,l,r){

if(l r){

var mid=arr[parseInt((l+r)/2)],i=l-1,j=r+1;

while(true){

while(arr[++i] mid);

while(arr[--j]mid);

if(i=j)break;

var temp=arr[i];

arr[i]=arr[j];

arr[j]=temp;

}

quickSort(arr,l,i-1);

quickSort(arr,j+1,r);

}

return arr;

}

8.冒泡法:

function bullSort(array){

var temp;

for(var i=0;i array.length;i++)

{

for(var j=array.length-1;j i;j--){

if(array[j] array[j-1])

{

temp = array[j];

array[j]=array[j-1];

array[j-1]=temp;

}

}

}

return array;

}


新闻标题:关于JavaScript维基的信息
本文URL:http://myzitong.com/article/dscipcd.html