JavaScript 是属于网络的脚本语言!

JavaScript 作用:被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies(js也可创建cookie,在浏览器里面创建),以及更多的应用。

引入使用JavaScript的方式

标签内部引用  例: <a href="javascript:alert(0);">点击我</a>

html页面引用   <script type="text/javascript">

外部引用   <script type="text/javascript" src="index.js"></script>  好处:责任分离,可以让很多页面都来使用这个js文件

引入JavaScript的位置    把引入js文件放到<div>之后

全局函数使用

encodeURI()--编码 decodeURI()--解码

encodeURIComponent()编码 decodeURIComponent()解码

①编码与编码

var url = "http://百度.com";

var urlEncode = encodeURI(url);

console.debug(urlEncode);

//  http://%E7%99%BE%E5%BA%A6.com

②isNaN() 判断一个值是否不是数字

isNaN(23) -> false  isNaN(“23”) -> false   isNaN(“sdf”) -> true

③将值转换成一个int----》parseInt(值)

④eval计算 JavaScript 字符串,并把它作为脚本代码来执行

eval("alert(2+1)");

强大之处:里面是一个字符串,放到eval可以直接运行;

全局属性(表)

方法

描述

FF

IE

Infinity

代表正的无穷大的数值。

1

4

NaN

指示某个值是不是数字值。

1

4

undefined

指示未定义的值。

1

5.5

js对象

1.创建一个对象

2.给对象添加属性

3.构造函数与this

4值和引用传递分析:

引用传递

<script language="javascript">

function Person(name,age){

this.age = age;

this.name = name;

}

function change(p1){

p1.name = "李四";

}

var person1 = new Person("张三",18);

change(person1); //传递地址

console.debug(person1);//Person { age=18, name="李四"}

</script>

值传递 

<script language="javascript">

function changeValue(x){

x = 5;

}

var x = 3;

changeValue(x);

alert(x);//3值传递

</script>

继承实例分析(有难度,不要求掌握)

1.继承实例分析(有难度,不要求掌握):

function ClassA(name){

this.name = name;

this.sayHello = function(){

alert("hello,"+name);

};

}

//继承

function ClassB(name){

this.newMethod = ClassA;

this.newMethod(name);//相等于 ClassA(name)

}

var obj = new ClassA("小明");

obj.sayHello();

var obj = new ClassB("小张");

1.obj.sayHello();

本地对象(本地对象: Array、Boolean、Date、Math、Number、String、Global(内置对象)

Js和java一样 有个顶层对象 是Object

主要属性:

constructor-对象的构造函数--上面已经学习了

prototype-使您有能力向对象添加属性和方法(原类型)--后面讲

Boolean

var x = new Boolean(true);//不用
console.log(typeof x);
var x = true;//推荐的使用
console.log(typeof x);
console.log(x);

object newmethod.js:21:1

true

Date

Math

console.debug(Math.ceil(5.1));

console.debug(Math.floor(5.1));

console.debug(Math.round(5.1));

console.debug(Math.max(5,7,3,56,-4));

document.write(Math.max(7.25,7.30)); //7.3

Math.min(4,56);

产生随机数 0.0 ~ 1.0 之间的一个伪随机数。

Math.random();

Number

String

String表示字符串,学习里面的属性和方法

①length :(属性) 可以拿到字符串的长度

var str = "abcde";

console.debug(str.length);//5-

②substr(begin,length)

substr:截取字符串(返回这截取后的字符串,原来的不变)

*  第一个参数:从哪开始(从0开始算)

*  第二个参数:截取多少个(如果没有这个参数,就全部截取)

var str="Hello world!";

console.debug(str.substr(3));  // lo world!

console.debug(str.substr(3,2)); //lo

③substring(begin,end)

var str="Hello world!";

console.debug(str.substring(3));  // lo world!

console.debug(str.substring(1,3)); //el

④concat(str1,str2)

var str1 = "hello";

var str2 = "world";

var str3 = str1.concat(str2);

console.debug(str3);//helloworld

⑤split("分隔符")

var str1 = "张三,李四,后帝";

console.debug(str1.split(","));// ["张三", "李四", "后帝"]

⑥charCodeAt(index)返回指定位置的unicode码

var str1 = "abcde";

console.debug(str1.charCodeAt(0));//取到对应索引处的unicode码

数组

1 数组的声明

var arr4 = ["大娃","二娃","三娃","七娃"];

2 数组的类与方法

length : 拿到数组的长度

join("$"):将数组转化成字符串

var arr = ["大娃","二娃","三娃","七娃"];

console.debug(arr.join("$"));  //大娃$二娃$三娃$七娃(默认用,隔开)

splice() 方法用于插入、删除或替换数组的元素。

var arr = ["大娃","二娃","三娃","四娃","七娃"];

1.start:从哪个位置开始(必需)

* 2.deletecount:删除几个元素(必需)

* 3.items:添加的元素

*/

arr.splice(3,1); //删除了四娃

/arr.splice(4,0,"五娃","六娃"); //添加

arr.splice(3,1,"水娃"); //修改

console.debug(arr);

for..in

for(var key in person){

console.debug(key);

console.debug(person[key]);

}

prototype

prototype-使您有能力向对象添加属性和方法(原类型)

可以往类上面添加方法

运用:有一个Date类,但是Date打印的效果不是我们想要的想要的效果,

但是Date类里面 没有format方法,那我们就可以给他添加一个原型的方法

BOM浏览器对象模型(BOM是browser object model的缩写,简称浏览器对象模型)

console.debug(document);//可以拿到document对象

console.debug(window.document);//和前面一样,window是顶级对象,默认不写

②连接对象 links

③锚 document.anchors

④表单对象 forms

console.debug(document.forms[0]);

Window对象

js里面消息三大交互

①alert(‘信息’):消息框

//alert("你好1");

②prompt(‘提示信息’,默认值): 显示可提示的用户输入框,让用户输入

//var inputText = prompt("请输入你的名字","如:孙悟空");

Console.debug(inputText);

③confirm( )  : 确认框

var flag = window.confirm("你确定要删除数据");

console.debug(flag);

<a href="http://www.baidu.com" onclick="javascript: return confirm('亲,你确定删除吗?')">删除</a>

打开与关闭窗口

①window.open()方法:打开一个新窗口

window.open("http://itsource.cn/");

浏览器的位置与窗口大小

moveBy(dx, dy)-移动偏移量

moveTo(x, y)-移动到指定座标

resizeBy(dw, dh)-窗口大小改变

resizeTo(w, h)-窗口大小改变

例:

//往右移10个像素,往下移20个像素

window.moveBy(10, 20);

//把窗口大小变成宽150,高300像素

window.resizeTo(150, 300);

//改变窗口的宽变为150,高度不变

window.resizeBy(150, 0);

//称到屏幕左上角,屏幕坐标 (0,0)

window.moveTo(0, 0);

IE

screenLeft -获得窗口所在X坐标值

screenTop -获得窗口Y坐标值

Mozilla(其它浏览器)

screenX -获得窗口所在X坐标值

screenY -获得窗口Y坐标值

-----------------------------------------

//兼容浏览器最佳方法

var x = window.screenX || window.screenLeft;

var y = window.screenY || window.screenTop;

alert("X坐标=" + x + ", Y坐标=" + y);

history(历史对象)

①history.back()函数,后跳;

<a href="javascript:window.history.back()">向后跳</a>

②history.forward()函数,前跳;

<a href="javascript:window.history.forward()">向前跳</a>

③history.go(index)函数,在浏览器历史记录中跳转,正数为前跳,负数为后跳

history.go(1) 向前跳一个页面,go(2)向前跳两个页面

history.go(-1) 向后跳一个页面

location(位置对象)

var loc = window.location;

for(var name in loc){

console.debug(name,loc[name]);//查看对象信息(了解内容)

//跳转到某一个页面

window.location.href = "my.html";

navigator(浏览器的信息对象-了解)

属性名称 说明

appCodeName 产品名称

appName 应用名称

appVersion 版本号

cookieEnabled 是否允许使用cookie

language 语言

oscpu 操作系统名称

platform 操作系统平台

product 产品代号或名称,比如Gecko

productSub 产品发布日期20100701

userAgent 客户端详细信息,比如:Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.11)

Gecko/20100701

Firefox/3.5.1

documet对象

①显示文章标题

document.title=”杨呜呜”;--》可以去修改页面的标题

②改变页面背景色 document.bgColor=”blue”;

③document.write("1*1");显示到页面上

定时器(掌握)

① setTimeout():到了多少时间后执行(只执行一次)--定时炸弹

clearTimeout() :取消定时器

setInterval():周期性定时器,每隔多长时间执行(不断执行)

clearInterval() :取消定时器

//每隔多长时间执行(不断执行)

//第一个参数:执行的方法

//第二参数:时间(毫秒)

javaScript核心基础的更多相关文章

  1. JavaScript编程:javaScript核心基础语法

    1.javaScript核心基础语法: javaScript技术体系包含了5个内容:          1.核心语言定义:          2.原生对象和雷子对象:          3.浏览器对象 ...

  2. JavaScript核心基础语法

    1 什么是JavaScript? 是一种嵌入在网页中的程序段. 是一种解释型语言,被浏览器解释执行. 由Netscape发明,ECMA(欧洲计算机制造商协会)将其标准化. JavaScript借用了J ...

  3. javascript核心基础总结

    对<深入理解javascript原型和闭包系列>,<深入理解javascript系列>和<javascript深入系列>的学习总结 词法作用域 作用域就是,程序查找 ...

  4. 《JavaScript核心概念》基础部分重点摘录

    注:<JavaScript核心概念>适合深入了解JavaScript,比我买的<JavaScript框架设计>语言和内容丰富多了(可能是我水平尚浅吧). 1. 作用域 var ...

  5. 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!【转载+整理】

    原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructu ...

  6. JavaScript的基础学习

    由js和python想到的: 弱类型语言 js 中的数据在进行算数运算时,会自动转换类型强类型语言 变量的值的数据类型一旦确定,使用时不能改变 动态语言:编译时不知道数据类型,只有在执行时才知道数据类 ...

  7. 三丶JavaScript 的基础学习(一)

      知识预览 BOM对象 DOM对象(DHTML) 8 实例练习 JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言 ...

  8. 一.javascript核心部分:1.词法结构

    本文作为个人学习笔记,一直也没有重视javascript的系统学习(javascript是最容易被人忽视的语言),我都是要用的时候百度一下查找下资料开始用,但没有系统的,学习,和整理过javascri ...

  9. JavaScript 的基础学习(一)

    JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.( ...

随机推荐

  1. 【iCore4 双核心板_ARM】例程二十八:FSMC实验——读写FPGA

    实验现象: 1.先烧写FPGA程序,再烧写ARM程序,ARM程序烧写完毕后即开始读写RAM测试,测试成功,绿色ARM·LED亮,测试失败,红色ARM·LED闪烁. 2.测试成功,ARM通过映射寄存器来 ...

  2. IE8 下更改input[file] file文件选择框样式

    1/使用绝对定位,将文件选择框固定,并且隐藏该选择框(文件选择框可调整宽高),设置该文件选择框 z-index 调高 比如 999. 2/使用任意标签,调整为与上面选择框相同宽高,目的为使用该标签样式 ...

  3. (原)kenel开机logo的制作

    今天项目需要,需要制作一个kernel的开机logo,所以在rk3288的平台上进行测试一番. 第一步:配置kernel:选上CONFIG_LOGO_LINUX_CLUT224选项 make menu ...

  4. python -- Pythonic

    所谓Pythonic,就是极具Python特色的Python代码(明显区别于其它语言的写法的代码) 总结如下: 两变量的内容交换 Python:a,b = b,a 非Python:t=a;a=b;b= ...

  5. c++ 格式字符串说明

    C++的格式化字符串经常用作格式化数字的输出.字符串合并和转换等等很多场合. 1. 格式化规定符 ━━━━━━━━━━━━━━━━━━━━━━━━━━ 符号                  作用 ─ ...

  6. geoserver 图层样式

    1.Styled Layer Descriptor 标准描述了稳当的结构合使用规则.一个文档包含了符号定义和绘制规则,那么这个文档就叫做Styled Layer Desciptor(SLD)样式,它是 ...

  7. Sqlalchemy model 文件自动生成

    自动生成Sqlalchemy的models文件的包早用过了,有个字段类型做了改动,调了得10几分钟才搞定.记录下自动生成models文件的python包sqlacodegen sqlacodegen已 ...

  8. 编译wxWidgets

    打开x64 Native Tools Command Prompt for VS 2017 cd wxWidgets-2.9.5\build\msw nmake -f makefile.vc TARG ...

  9. Linux服务器中创建Oracle数据库实例

    紧接上篇,在Linux服务器已经完成对Oracle数据库软件的安装后,接下来要创建Oracle实例,看图说话: [su – oracle echo $DISPLAY export DISPLAY=10 ...

  10. windows 下面必备软件

    弹窗拦截软件 http://www.pc6.com/pc/tcguanggaolj/