博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python之路 Javascript的学习
阅读量:5054 次
发布时间:2019-06-12

本文共 7731 字,大约阅读时间需要 25 分钟。

1.JavaScript 被设计用来向 HTML 页面添加交互行为。

2.JavaScript 是一种脚本语言(脚本语言是一种轻量级的编程语言)。
3.JavaScript 由数行可执行计算机代码组成。
4.JavaScript 通常被直接嵌入 HTML 页面。
5.JavaScript 是一种解释性语言(就是说,代码执行不进行预编译)。

javascript能做什么

表单数据验证:表单数据验证是JavaScript最基本也是最能体现效率的功能。

动态HTML(即DHTML):动态HTML指不需要服务器介入而动态变化的网页效果,包括动态内容、动态格式、动态布局等。
用户交互:用户交互指根据用户的不同操作进行的响应处理。例如:联动菜单等。
少量数据查找:能够实现在当前网页中进行字符串的查找和替换。
AJAX核心技术:AJAX即异步JavaScript+XML。该对象提供一种支持异步请求的技术,使客户端可以使用JavaScript向服务器提出请求并处理响应,但并不影响用户在客户端的浏览。

javascript的书写方式

第一种:写到整个网页内容中最下面(原则:将所有内容加载出来再出现所要互动的效果)

<script>

  sdfsdfsdfsd

<script>

第二种:通过连接一个文件来实现

<script src="a.js"></script>

javascript的输出方式

<script >

    alert(sdfsdf)
    console.log(sdfsdfsdfsdf)
</script>

javascript的注视方式

单行注释://

多行注释:/**/

变量

1.变量是用于存储信息的容器:  x=5; length=66.10;

2. JavaScript 变量名称的规则:   

  (1).变量对大小写敏感(y 和 Y 是两个不同的变量)   

  (2).第一个字符必须是字母、下划线(_)或美元符号($)   

  (3).余下的字符可以是下划线、美元符号或任何字母或数字字符     

注释:由于 JavaScript 对大小写敏感,变量名也对大小写敏感。

3.关于变量,js中是这样定义的:var 变量名 = 变量值(局部变量) 变量名 = 变量值(全局变量)

数据类型

数字

var num = 10 或者.1(与0.1相同) parseInt会把变量总的以数字开头的数字取出来,如果数字在中间会报Nan(not a number)。

parsefloat解析浮点数

var num = 1234sdsf parseInt(num)

字符串

var str = 'alex is sb'

console.log(str)

obj.length                                 长度

obj.trim()                                  移除空白 obj.trimLeft() obj.trimRight()

obj.charAt(n)                             返回字符串中的第n个字符

obj.concat(value, ...)                   拼接

obj.indexOf(substring,start)         子序列位置

obj.lastIndexOf(substring,start)    子序列位置

obj.substring(from, to)                根据索引获取子序列

obj.slice(start, end)                     切片

obj.toLowerCase()                      大写

obj.toUpperCase()                      小写

obj.split(delimiter, limit)          分割

实例:跑马灯

1  2  3      4         
5 Title 6 7 8
my nane is liwenqiang
9 10 11
View Code
1  2  3      4         
5 Title 6 7 8
欢迎光临
9 10 11 23
View Code

数组

obj.length            数组的大小
 
obj.push(ele)       尾部追加元素
obj.pop()             尾部获取一个元素

obj.unshift(ele)    头部插入元素

obj.shift()           头部移除元素

obj.splice(start, deleteCount, value, ...)  插入、删除或替换数组的元素

                    obj.splice(n,0,val) 指定位置插入元素
                    obj.splice(n,1,val) 指定位置替换元素
                    obj.splice(n,1)     指定位置删除元素

obj.slice( )          切片

obj.reverse( )      反转
obj.join(sep)       将数组元素连接起来以构建一个字符串
obj.sort( )           对数组元素进行排序

循环方式:

  第一种(循环类似于数据的数据):for(var i = 0 ;i<arr.length;i++){

    console.log('sdfsdfsd')

}

  第二种(循环字典类型的数据):for(var in arr){

   console.log(arr[i]);

}

字典

var = dict{'lwq':11,'hsc':qwq}

bool

true or false

对象

function 函数,在js中位置很重要

typeof产看数据类型

算法

Math.ceil(数值)

Math.floor(数值)

Math.round(数值)

Math.min(数值1,数值2)

Math.max(数值1,数值2)
Math.random() 获得0-1之间的随机数

 

算术运算符:

+ - * / % ++ --

var num=10

var total = num++    ++num

console.log(total)

num++:total先等于num,然后num在+1

++num:num先+1,total再等于num

 

比较运算符:

> >= < <= != == === !==

三个等于相当于全部相等(数值和数据类型都相等)

逻辑运算符:

&& || !

赋值运算符:

= += -= *= /=

字符串运算符:

+ 连接,两边操作数有一个或两个是字符串就做连接运算

流程控制

顺序结构

  代码一行一行向下执行

<script>

  console.log(“吃饭”);
  console.log(“睡觉”);
  console.log(“打豆豆”);
</script>

分支结构

  1.单分支

  if(){}

  2.双分支

  if(){}

  else(){}

  3.多分枝

  if(){}

  else if(){}

  else(){}

  

循环结构

  do ..... while     先执行一次,然后再执行while

  var n = 0

  do {

  console.log('sdfsdfsd')

  n  = n+1

}while(n<3)

 

函数

书写方式:

1.function 函数名(){

  console.log('rerer')

}

2.var func = function(){

  console.log()

}

3.(function(){

  console.log()

})     直接运行,不用调用

系统函数

eval ( ) 是Python中eval和exec的合集,既可以编译代码也可以获取返回值。

1、序列化

JSON.stringify(obj)   序列化
JSON.parse(str)        反序列化

2、转义

decodeURI( )                   URl中未转义的字符
decodeURIComponent( )   URI组件中的未转义字符
encodeURI( )                   URI中的转义字符
encodeURIComponent( )   转义URI组件中的字符
escape( )                         对字符串转义
unescape( )                     给转义字符串解码
URIError                         由URl的编码和解码方法抛出

时间函数

实例:时间显示

1  2  3      4         
5 Title 6 7 8
9 10
11 12 13 30
View Code

JavaScript之DOM操作

什么是DOM

HTML Document Object Model(文档对象模型)

2.HTML DOM 定义了访问和操作HTML文档的标准方法
3.HTML DOM 把 HTML 文档呈现为带有元素、属性和文本 的树结构(节点树)

获取元素节点方法

1.直接查找:

document.getElementById(“idname”)

document.getElementsByTagName(“tagname”) 
document.getElementsByName(“name”)
document.getElementsByClassName(“name”) 获取一个数组

2.间接查找

parentElement // 父节点标签元素

children // 所有子标签
firstElementChild // 第一个子标签元素
lastElementChild // 最后一个子标签元素
nextElementtSibling // 下一个兄弟标签元素
previousElementSibling // 上一个兄弟标签元素

操作属性节点方法

tag.className => 直接整体做操作

tag.classList.add('样式名') 添加指定样式
tag.classList.remove('样式名') 删除指定样式

 

innerText innerHtml

value获取当前选中的value值
1.input value获取当前标签中的值

var myinput = document.getElementById('username')

myinput.value

myinput.value = 'fuck'

2.select (selectedIndex 代表找索引)
3.textarea
innerHTML 给节点添加html代码:
该方法不是w3c的标准,但是主流浏览器支持
tag.innerHTML = “<p>要显示内容</p>”;

案例:输入框搜索关键字(focus, blur)

操作样式属性方法

 

创建节点方法

1  2  3  4     
5 6 Title 7 8 9
10 11
12 13 14 24
View Code

 

1.字符串的方式创建:
var tag = "<input type='text' />";
xxx.insertAdjacentHTML('beforeEnd',tag);

注意:第一个参数只能是:

‘beforeBegin’‘afterBegin’‘beforeEnd’‘afterEnd’

2.createElement(标签名)

创建一个指定名称的元素。
例:var tag = document.createElement(“input")
tag.setAttribute('type','text');

追加节点方法

追加一个子节点(作为最后的子节点)

somenode.appendChild(newnode)

把增加的节点放到某个节点的前边

somenode.insertBefore(newnode,某个节点);

节点替换

somenode.replaceChild(newnode, 某个节点);

str.add

表格案例:直接查找

1  2  3      4         
5 Title 6 7 8 9 10 11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
操作 ip 端口
   
   
   
37 38 39 89
View Code

模态框:间接查找(三层实例)

1  2  3  4         
5 Title 6 32 33 34
35
36
37
38
39
40

41

42
43
44
45 46 47 61 62
View Code

使用js操作css属性的写法是有一定的规律:

1、对于没有中划线的css属性一般直接使用style.属性名即可。如:

obj.style.margin,obj.style.width,obj.style.left,obj.style.position等

2、对于含有中划线的css属性,将每个中划线去掉并将每个中划线后的第一个字符换成大写即可。如:

obj.style.marginTop,obj.style.borderLeftWidth,obj.style.zIndex,obj.style.fontFamily等。

 

绑定方式:如果编辑框中有内容,可以提交,如没有内容,弹出提示框。

1  2  3      4         
5 Title 6 7 8
9
10
11
12 13 14 25
View Code

绑定方式2:

鼠标点击文本框,文本框中的提示内容消失,如果点击文本框外部,文本框中的内容出现。(获取焦点onfoucs、失去焦点onblur)

1  2  3      4         
5 Title 6 7 8 9 10 27 28
View Code

阻止默认事件发生:

1  2  3  4     
5 6 Title 7 8 9 10 揍你11 12 18 19
View Code

第二种方式:

1  2  3  4     
5 6 Title 7 8 9 10 揍你11 17 18
View Code

实例:用户提交数据(没有填写内容)

1  2  3  4     
5 6 Title 7 8 9
10
11
12
13
14 34 35
View Code

绑定多个相同的事件

document.getElementById('i1').addEventListener('click',function () {
console.log(2);

1  2  3  4     
5 6 Title 7 8 9 10 11
鸡建明
12 20 21
View Code

- 事件执行顺序:

- 捕获 true
- 冒泡
document.getElementById('i1').addEventListener('click',函数,true或者false)
- event是当前事件的信息

1  2  3  4     
5 6 Title 7 8 9
10
11
12
13
14
15
16
17
18
19 20 29 30 31
View Code
1  2  3  4     
5 6 Title 7 8 9 10 11 20 21
View Code

 

转载于:https://www.cnblogs.com/l-w-q/p/6423360.html

你可能感兴趣的文章
VC++编译说明
查看>>
Sitecore客户体验成熟度模型之旅
查看>>
浅析redis缓存 在spring中的配置 及其简单的使用
查看>>
SSL-ZYC 洛谷 P1118 数字三角形
查看>>
关于APNs的错误认识纠正
查看>>
InotifyPropertyChanged接口实现简单数据绑定
查看>>
text-align:center 在FireFox及Google浏览器下无效的问题
查看>>
BZOJ1692: [Usaco2007 Dec]队列变换
查看>>
《POINTERS ON C》(基于ANSI C)知识点及附带问题(三)
查看>>
leetcode dp
查看>>
简单回射程序小结
查看>>
iOS - 通过UIActivityViewController分享APP内容
查看>>
阿里云云主机挂载数据盘,格式化硬盘(新购云主机)(转)
查看>>
JSON与JavaBean、XML之间的转换
查看>>
腾讯视频qlv格式转换mp4普通视频方法
查看>>
Maven中classifier
查看>>
Use Laravel/homestead 环境维护基于 brophp 开发的老项目
查看>>
测绘软件优缺点
查看>>
SQL优化(SQL TUNING)可大幅提升性能的实战技巧之一——让计划沿着索引跑
查看>>
pyhton自动化项目编码以及命名规范
查看>>