JavaScript基础笔记集合

 

JavaScript基础笔记集合

 

js简介

js是脚本语言。浏览器是逐行的读取代码,而传统编程会在执行前进行编译

 

js存放的位置

  1. html脚本必须放在<script></script>之内。

  2. <script>可放置在<head><body>

  3. 和css一样,JS可以存放在外面,通过<script src="">来链接

  4. 现代浏览器不需要声明type="text/javascript"

  5. 通常的做法是把函数放入<head>或页面的底部,这样就可以把他们放到同一位置,并且不会干扰页面内容

 

消息对话框

直接弹出消息对话框alert

alert("text");

w3c: alert() 函数在 JavaScript 中并不常用,但它对于代码测试非常方便。

确认消息对话框(confirm)

var message=confirm("str");---------------str为消息对话框显示的内容

confirm返回值boolean

获得内容对话框

var message=prompt("str");-------------str消息对话框显示的内容

你输入的内容会被prompt返回

demo

<scrpit>function xx(){var message=confirm("str");if (confirm==true){
document.write("str");}
</script>
<body>
<input type="button" onclick="xx()" value="xxx" />
</body>

 

数据类型

动态类型

js拥有动态类型,意味着相同的变量,可以用作不同类型。

var x=2;var x ="a";

 

数字类型

  1. js只有一种数字类型,可以加小数点,或者不加,太大或太小的数字可以用科学计数法

  2. 整数最大15位,小数最大17位。
    3.八进制以【0】开头,十六进制以【0x】开头。
    科学计数法:

    var a=123e5---12300000;
    var b=123e-5------0.00123

 

数组

创建数组

var a = new Array() ;a=["a","b"];var a =new Array("a","b");var a =["a","b"];

 

数组相加

a.concat();

用数组中的元素组成字符串

a.join(".")-----默认两元素之间逗号隔开,这里设置用[.]隔开。

排序

a.sort();

布尔

var a =new Boolean(0);
当值为空或者为:0、-0、null、""、false、undefined或者NaN时,返回false。

 

对象

对象简述

对象由{}分隔,在{}内,对象的属性以(name:value)来定义。属性用逗号分隔
var person{firstname="a",lastname="b"}
寻址方式:
person.firstname;person["firstname"]

 

创建对象的方法

1.定义并创建对象实例。

dog=new Object();-----创建dog对象
dog.name="diudiu";-----dog对象属性
|| dog={name:"diudiu",};

2.使用函数定义对象,然后创建对象实例

function(name,habit){    this.name=name;    this.habit=habit;
}var a=new dog("diudiu",bite);

为已有对象添加属性

假设dog对象已经存在,但是没有gf属性
`dog.gf="joyce";

 

变量

  1. 当向变量赋值文本时,加引号

  2. 赋值数字时,不要加引号,否则会当文本处理

  3. 重新申明变量,变量的值不会丢失。

 

常用变量类型

var a =new Number/Array/String/Boolean/Object;

 

字符串

var txt="abc";
常用方法:

txt.lenght()------获取长度txt.fontsize(12px)-----文字大小txt.link("http://")----为字符串加链接txt.strike()-------删除线txt.toLowerCase/UpperCase----大小写转换txt.indexOf("a")-----定位字母a出现位置txt.match("a")-------查找字符,找到返回该字符,否则nulltxt.replace(/b/,"xxx")-------把字符b替换成xxx

 

打开/关闭窗口

打开窗口

window.open("url","name","features","replace")

window.open("http://www.baidu.com","_blank","width=200,height=200,status=no")

wondow_open

features

 

关闭窗口

window.close();--------------关闭本窗口
<窗口对象>.close();----------关闭指定窗口

 

函数

  1. 函数格式
    function name(){}

  2. 函数对大小写敏感

  3. 函数可以返回值,通过return语句,并且return是一条函数结束语句。

  4. 函数可以传参数,形参与实参一一对应。

  5. 局部变量随函数而消亡。

  6. 在函数内为全局变量赋值,该变量依旧是全局变量。

 

循环

for/in循环

<script>
    var txt;     var person={name:"bill",age=20}     for(var x in person){
         txt+=person[x];
}</script>

 

x遍历person对象每一个属性

continue&break

  1. continue只能用在循环中

  2. break(不带标签)只能用在循环或switch中

  3. break(带标签),用于跳出代码块
    格式:

    label:{
    statement1;statement2;break:label;statement3;statement4;
    }

    语句只会执行1,2;3,4不会执行

验证

JavaScript可用来在数据被送往服务器前对表单输入的数据进行验证

demo

如果field值为空,返回false,否则true

function validate(field,alerttxt){    with(field){    if(value==null||value=="")
       {alert(alerttxt);return false}    else return true;    
}

 

DOM简介

DOM-document object model
定义:当网页被加载时,浏览器会创建页面的DOM。
它是用以访问html元素的正式w3c标准。

 

 

html dom 树

通过可编程的对象模型,js获得了足够的能力来改变html
它可以改变元素,属性,样式,以及对事件做出反应。

通过js改变html/css

获取并改变html元素内容

var mychar=document.getElementById("idName");
mychar.InnerHTML="xxx";----------将id为idName的内容改为xxx

 

改变元素属性

document.getElementById("imageName").src="";------改变图片链接

改变元素样式

格式Object.style.property=new style;

var mychar=document.getElementById("idName");
mychar.style.color="red";

改变输出流

document.write("sunOpar");--------这个方法将覆盖原来的html页面

 

增删元素

增加

在id为box的div元素中增加p标签

html:

<div id="box"></div>

js:

var fir=document.creatElement("p");---创建p标签var lat=document.creatTextNode("新文本");
fir.appendChild(lst);var element=document.getElementById("box");
element.appendChild(fir);
 
删除

要删除元素,需要得到该元素的父元素

var child=document.getElementById("id1");
child.parentNode.remove(child);

 

正则表达式

正则表达式简述

当你要检索某个文本时,可以使用一种模式来检索文本,RegExp就是这种模式。

定义

var part=new RegExp("after");---定义part的RegExp为【after】

 

检索(boolean)

part.test("aftervax")-----由于这个字符串包含【after】,返回true

 

检索(指定值)

part.exec("aafterrr")-------由于也包含,返回该值【after】

 

第二个参数

part=new RegExp("a","g")-----【g】意思是【global】,搜索所有的【a】
part.exec("acdadcda")------此时会返回所有【a】,输出是:【aaanull】

 

改变RegExp

part.compile("before")----把【after】改成【before】

JavaScript基础笔记集合(转)的更多相关文章

  1. JavaScript基础笔记二

    一.函数返回值1.什么是函数返回值    函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...

  2. JavaScript基础笔记一

    一.真假判断 真的:true.非零数字.非空字符串.非空对象 假的:false.数字零.空字符串.空对象.undefined 例: if(0){ alert(1) }else{ alert(2) } ...

  3. c#基础笔记-----------集合

    首先所谓集合是用于管理对象的容器类.一方面集合将独立的对象汇集成群集,作为一个群集来管理,以便进行整体性操作:而另一方面,集合可以方便地获取群集中的个体,进行个体化操作.在.Net中,集合被封装为对象 ...

  4. JavaScript基础笔记(十)表单脚本

    表单脚本 一.表单基础知识 JavaScript中表单对应的是HTMLFormElement类型,该类型继承自HTMLElement类型. 通过document.forms可以获得所有表单元素,通过数 ...

  5. JavaScript基础笔记(八)DOM扩展

    DOM扩展 一.选择符API Selectors API是由W3C发起制定的一个标准,致力于让浏览器原生支持CSS查询. 一)querySelector() 在Document和Element类型实例 ...

  6. JavaScript基础笔记(十四)最佳实践

    最佳实践 一)松散耦合 1.解耦HTML/JavaScript: 1)避免html种使用js 2)避免js种创建html 2.解耦CSS/JS 操作类 3.解耦应用逻辑和事件处理 以下是要牢记的应用和 ...

  7. JavaScript基础笔记(一)基本概念

    基本概念 一.语法 一)区分大小写 二)标识符 书写规则同Java 三)注释 略 四)严格模式 1.在整个脚本中启用严格模式:在顶部添加 "use strict" 2.指定函数在严 ...

  8. JavaScript基础笔记1220

    JavaScript笔记1.JavaScript关键词2.JavaScript标识符 必须以字母,下划线(_)或美元符($)开始. 后续的字符可以是字母.数字.下划线或者美元符 (数字是不允许作为首字 ...

  9. javascript基础笔记学习

    /** * Created by Administrator on 2016/12/26. */ /* var box; alert( typeof box); box是Undefined类型,值是u ...

随机推荐

  1. 分享知识-快乐自己:mysql数据库常见两种引擎

    mysql的常用引擎 在MySQL数据库中,常用的引擎主要就是2个:Innodb和MyIASM. 首先: 1.简单介绍这两种引擎,以及该如何去选择. 2.这两种引擎所使用的数据结构是什么. Innod ...

  2. Node.js函数介绍(参数为一个函数)

    在JavaScript中,一个函数可以作为另一个函数的参数.我们可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数. Node.js中函数的使用与Javascript类似,举例来说,你可 ...

  3. 教你们在cmd里运行打开游戏,效率很快的。喜欢吧?

    第一步安装好的游戏 环境变量 变量值:把刚才复制好粘贴在里面,前面不用删除. 喜欢吧?这招非常好用.

  4. Log4j_学习_03_自己动手封装log工具

    二.参考资料 1.log4j 是否可以通过条件判断 在程序运行中动态选择日志存储目录 2.log4j删除N天前日志实现

  5. Jmeter基本组件

    学习jmeter首先配置环境,使工具运行起来,然后需要了解该工具大致的内容,以下是写的Jmeter基本组件 1.添加线程组:右键点击“测试计划”-->“添加”-->“Threads(Use ...

  6. 如何加快Json 序列化?有哪些方法?

    1.使用阿里的fastjson 2.可以通过去除不必要属性加快序列化.如person对象,有id,name,address,我json需要用户姓名,此时序列化的时候就只序列化name,id和addre ...

  7. scrapy入门实践1

    Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. 这就是整个Scrapy的架构图了: 各部件职能: Scrapy ...

  8. Entity Framework中AutoDetectChangesEnabled為false時更新DB方法

    Entity Framework初始化時執行: Configuration.AutoDetectChangesEnabled = false; 會將數據庫變為NotTrack模式,也就是不會自動同步对 ...

  9. Http请求状态码

    1xx - 信息提示   这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应.    ·0 - 本地响应成功.   · 100 - Continue 初始的请求已 ...

  10. Qt Creator 中自动补全的快捷键描述

    在TextEdit中的completeThis