JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。

1、存在方式

functionfunc() {

alert("Hello Shuaige")

}

2、javascript代码块位置

放在

标签内的代码底部,为什么不能放在上面呢?为什么css的就可以放在上面呢?

注:css代码首先要记住html代码是从上往下解释的,如果css代码放在下面,在上面的代码使用css样式,如果css代码块放在下面就没有办法显示样式了

另不同的浏览器处理请求也不同:正常来说当有一个请求过来时候会把js&css一起发送过去,咱们按照最low的方式理解的话可以这么理解:如果js文件或者js耗时比较久的话,下面的html代码就无法执行了。

3、变量和函数的声明

变量:

functionm1() {

alert("shuaige")var name = 'tianshuai'; //var 变量名 ,变量名前面加var为局部变量

age = '18';//注这里需要注意,建议使用的时候一般不要使用全局变量!否则如果代码量比较大的

//时候容易出现调用混乱的问题

}

m1();

函数

//普通函数

functionfunc() {

alert("Hello Shuaige")

}//定义一个可传参数的函数

functionfunc(arg) {

alert(arg)

}

func('Superman')//自执行函数,顾名思义,定义好之后可以自动执行

(function f3(arg) {alert(arg)})("Shuaige is good man");

//匿名函数,用处不是很大了解就行

var a = function() {

alert('meinv');

};

a();

js 的展示方法有两种:

通过网页来展示

functionf1() {

alert("hello shuai ge")

}

f1()

显示效果如下:

通过console来展示

functionf1() {

console.log("Hello shuaige ")

}

f1()

显示效果如下:

打开google chrome F12点击"Console",刷新页面!

4、字符串常用方法及属性

调试的地方可以在google chrome 上进行测试,F12点击"Console"

obj.trim()  去除空格

var a = "Luotianshuai"undefined

a.trimLeft()#去除左边的空格

"Luotianshuai"a.trimRight()#去除右边的空格

"Luotianshuai"a.trim()//去除两边的空格"Luotianshuai"a"Luotianshuai" #这里可以发现我执行了上面的去除空格的命令之后,实际的值是没有改变的

b=a.trim()"Luotianshuai" #但是我们可以通过赋值来改变他

b"Luotianshuai"

obj.charAt(index) 根据索引获取字符串里的字符

b"Luotianshuai"b.charAt(0)"L"b.charAt(1)"u"b.charAt(2)"o"

obj.substring(start,end)  获取字符的子序列,类似于切片

b"Luotianshuai"b.substring(0,3)"Luo"

obj.indexOf(char) 去字符串找指定的字符的索引值是多少

b"Luotianshuai"b.indexOf("t")3

obj.length  获取字符串的长度

b"Luotianshuai"b.length12

5、数组

声明一个数组和python中的列表类似

a = [11,22,33,44] #声明一个数组

[11, 22, 33, 44]

插入

a = [11,22,33,44] #声明一个数组

[11, 22, 33, 44]

a.push(55) #在数组最后增加一个元素

5 #这里是数组的长度

a

[11, 22, 33, 44, 55]

a.unshift(00) #在数组最前面增加一个元素

6 #长度

a

[0,11, 22, 33, 44, 55]

a.splice(3,0,'insert') #在指定的索引增加一个元素,括号内(3为索引值,0为固定值,要插入的内容)

[]

a

[0,11, 22, "insert", 33, 44, 55]

a.unshift(100)8

移除

a

[100, 0, 11, 22, "insert", 33, 44, 55]

a.pop()#从尾部获取

55a.shift()#从开头获取

100a

[0,11, 22, "insert", 33, 44]

a.splice(3,1) #从指定位置获取,括号内参数为(元素的索引,后面为索引后的元素个数,包含本身)

["insert"]

a

[0,11, 22, 33, 44]

切片

a

[0,11, 22, 33, 44]

a.slice(1,3)

[11, 22]

a

[0,11, 22, 33, 44]

合并

a = [11,22]

[11, 22]

b= [44,55]

[44, 55]

a.concat(b)

[11, 22, 44, 55]

a

[11, 22]

b.concat(a)

[44, 55, 11, 22]

反转

a

[11, 22]

a.reverse()

[22, 11]

a

[22, 11]

字符串格式化

a

[22, 11]

a.join('_')"22_11"a

[22, 11]

数组长度

a

[22, 11]

a.length2

6、字典

字典是数组的一种特殊形式

dict1 = {'k1':123,'k2':234} #定义一个字典

Object {k1: 123, k2: 234}

dict1['k1']123

7、循环

js中的循环有两种方式

#第一种

for (var i=0;i<10;i++) {console.log(i)}#输出结果,看本代码下第一图

#第二种

for (var item ina) {console.log(a[item])}#输出结果,看本代码下第二图

图二:

8、异常处理

和python中的异常处理类似,代码如下:

try{var tiancai =isme

}catch(e) {

console.log(e)

}finally{

console.log("shuaige is so smart;")

}

显示效果如下:

DOM编程

文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。

DOM编程:可以操作html所有的标签,进行找、操作!他也是javascript的一部分

1、选择器:

document.getElementById('id')  查找指定的id,然后我们可以进行操作

123

var i = document.getElementById('id_1'); //查找指定的id

i.innerText = '456'; //innerText修改指定的字符串

显示效果,当我们打开IE的时候123就会被修改为456

下面操作方式也类似:

document.getElementsByName('name')

123

var i = document.getElementsByName('name_1'); //查找指定的name,这里和ID不一样name可以有多个

for (var item ini) {

i[item].innerText= '456'; //innerText修改指定的字符串

};

document.getElementsByTagName('tagname')

123

234

var i = document.getElementsByTagName('div'); //查找指定的标签类型,这里同样和ID不一样标签比如

标签可以有多个

for (var item ini) {

i[item].innerText= '456'; //innerText修改指定的字符串

};

上面的代码试用jquery会非常方便就不需要重造轮子

2、注册 事件

首先了解下面的意思:

事件:比如有一个“按钮”,当你点击的时候发生什么,双击的时候发生什么,这个就叫做事件!

注册:首先这个按钮,当你点击的时候发生的动作,上面的事件要使他出现我们想要的效果,首先得把事件和函数进行绑定,然后把他们注册到指定标签上。

常用事件:

onclick

onblur

onfocus

..................

举例代码如下:

写一个input的标签,首先把事件和函数进行绑定,当你一点这个按钮的时候就会自动执行,绑定的函数:

shuaige_js_file

}

234

functionedit() {vari=document.getElementById('id_1');

i.className= 'color_red';

}

那么恢复按钮呢?只要在新增一个即可

shuaige_js_file

}

234

python写前端和js_Python之路【第十二篇】前端之jsdomejQuery相关推荐

  1. ES6之路第十二篇:Promise对象

    Promise的含义 Promise 是异步编程的一种解决方案,比传统的解决方案--回调函数和事件--更合理和更强大.它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Prom ...

  2. 【手写 Vue2.x 源码】第二十二篇 - dep 和 watcher 关联

    一,前言 上篇,主要介绍了 Vue 依赖收集的过程分析: 介绍了 Vue 的响应式特性 介绍了 Vue 的依赖收集过程 介绍了 dep 和 watcher 以及观察者模式: 本篇,Vue 依赖收集的实 ...

  3. Python编写微信打飞机小游戏(十二)

    如果觉得这篇文章对您有所启发,欢迎关注我的公众号,我会尽可能积极和大家交流,谢谢. Python编写微信打飞机小游戏(一) Python编写微信打飞机小游戏(二) Python编写微信打飞机小游戏(三 ...

  4. 【零基础入门前端系列】—背景属性(十二)

    [零基础入门前端系列]-背景属性(十二) 一.背景属性 CSS背景属性主要有以下几个: CSS3中可以通过background-image属性添加背景图片. 不同的背景图像和图像用逗号隔开,所有的图片 ...

  5. Python之路(第十六篇)xml模块、datetime模块

    一.xml模块 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单, xml比较早,早期许多软件都是用xml,至今很多传统公司如金融行业的很多系统的接口还主要 ...

  6. 用python写一个有AI的斗地主游戏(二)——简述后端代码和思路

    源码请看我的Github页面. 这是我一个课程的学术项目,请不要抄袭,引用时请注明出处. 本专栏系列旨在帮助小白从零开始开发一个项目,同时分享自己写代码时的感想. 请大佬们为我的拙见留情,有不规范之处 ...

  7. Python之路【第十二篇】:函数

    定义函数 def 函数名(形式参数): 函数体 return 返回值 a = 1 def f(b):print(b)return None 如上所示,就是简单的定义了一个函数 函数的返回值 retur ...

  8. Python之路【第二十二篇】:Django之Model操作

    Django之Model操作 一.字段 AutoField(Field)- int自增列,必须填入参数 primary_key=TrueBigAutoField(AutoField)- bigint自 ...

  9. Python高手之路【十二】面向对象设计模式

    单例模式 单例,顾名思义单个实例. class Person:__instance = Nonedef __init__(self):pass@staticmethoddef getInstance( ...

最新文章

  1. 刘伟:什么是智能人机交互?
  2. 北航计算机科学与技术专业培养计划,北京航空航天大学2020年计算机科学与技术专业培养计划...
  3. Vue.js-Day07【项目实战(附带 完整项目源码)-day02:学习能力、字体图标(使用步骤)、在vue.js中使用jQuery】
  4. 没有人会觉得正则表达式难写
  5. 学习NSURLSession(1)
  6. 机器学习算法的调试 —— 梯度检验(Gradient Checking)
  7. idle运行python_python中的idle是如何运行的
  8. 无法保存关闭文件 苹果电脑 显示正在保存_??Linux文件编辑 - 给你骨质唱疏松
  9. R语言介绍(R包与帮助文档)
  10. 在韩国5G商用神话中,我们不能学到什么?
  11. HTML中表格写法,在HTML代码里面表格的写法以及表格的特性
  12. 学习Mac开发第四弹 通过NSImageView加载图片
  13. html5图片邀请函,html5,邀请函.doc
  14. 浅谈微信小程序对于创业者,意味着什么?
  15. 基于kinect的人体动作识别系统(算法和代码都放出)
  16. 互联网大厂的年终奖(华为分红400亿,腾讯每人发股票 )
  17. 用多媒体计算机画图教学设计,Windows98中画图程序的使用教学设计.doc
  18. 从业了八年程序员觉得已经是非常的枯燥了
  19. 关于正态总体的样本均值与样本方差的重要结论
  20. 【淘客基地各项目拉新活动海报已开启】公告

热门文章

  1. php根据分类生成网址,PHP实现无限极分类生成分类树的方法
  2. java单终端登陆_配置终端服务单一登录
  3. java 线程变量put_Java线程(篇外篇):线程本地变量ThreadLocal
  4. mediarecorder添加时间戳_Python脚本实现数据处理(官方实例)和Hive自带时间函数...
  5. NFS服务器原理、搭建、配置
  6. 对象设计——责任、角色和协作思维导图笔记
  7. C++学习之路 | PTA乙级—— 1058 选择题 (20 分)(精简)
  8. java程序员面试需要注意什么_Java程序员面试时要注意的一些问题
  9. mysql数据库进行更新、插入显示中文乱码问题
  10. ef生成mysql字段注释_EFcore+MySql 数据迁移的时候,怎么给表结构加注释?