java-前端之js
js:
js的三种形式:
<!-- 事件:就是用户的操作或者动作,就是js被调用的时机;如:单机事件,双击事件 -->
<!-- 1.事件定义式:在定义事件时直接写js -->
<input type="button" value="btn1" onclick="alert('点我干嘛')"/>
<!-- 2.嵌入式:在script标签内写js该标签可以写在网页的任意位置 -->
//js注释和java一样/**/
/*1.js中的函数都是公有的因此不用修饰符修饰*/
/*2.js中的函数不用声明返回值类型*/
function f2(){
//js中单引号和双引号一样
alert("点你咋啦");}
<!-- 3.文件调用式:在js文件内写js -->
<script src="my.js"></script>
js中:
//直接所写的代码有两种情况
//1.定义函数,该函数是在页面加载后用户点击按钮时调用的.
//2.直接书写js,这样的js是在页面加载时直接调用的,其调用的时机甚至比body还早.有可能出现某些标签获取为为定义状态;
//alert("谁让你打开的");
console.log("控制台打印一下");
//1..声明变量并输出到浏览器控制台
var x;
console.log(x);
x = 5;
console.log(x);
x = "你妹";
console.log(x);
var y = 6;
console.log(y);
//2..数据类型
var s = "hello";
var n = 3.14;
var b = true;
console.log(s);
console.log(n);
console.log(b);
//3..隐式转换
console.log(s+n);
console.log(s+b);
console.log(n+b);
console.log(b+b);
//4..强制转换
console.log(parseInt(3.14));
console.log(parseInt("5.63"));
console.log(parseInt("zxc"));
console.log(parseInt(""));
//5..类型判断
console.log(typeof(s));
console.log(typeof(n));
console.log(isNaN(56));
console.log(isNaN("56"));
console.log(isNaN("a56"));
console.log(isNaN("zxc"));
console.log(isNaN(parseInt("")));
//6.运算符
console.log(5=="5");
console.log(5==="5");
//7.条件
//js可以用任何数据做条件,当以非boolean做条件时,空值等价于false,非空值等价于true
//空值:0,null,"",NaN,undefined
//这样设计的目的,时为了简化判断的逻辑.
var k = 0;
if(k){console.log("ok");}
var w = 6;
w && console.log("好");
//根据id获取标签
var input = document.getElementById("num");
js调试技巧:
1.看报错信息(在浏览器控制台看)
2.打桩(跟踪程序执行的过程,查看关键步骤变量的值)
3.排除法(删除一半代码保留一半代码看是否报错,用于定位问题)
js中api整理:
//1.String对象:主要的方法和Java一样,看看手册
//2.Number对象
var n = 3.1415926;
console.log(n.toFixed(3));
//3.Array对象
//1)如何创建数组
var a1 = ["zhangsan",25,false];
console.log(a1[0]);
var a2 = new Array();
a2.push("lisi");
a2.push(28);
a2.push(true);
console.log(a2[1]);
//结论:无论用什么方式创建出来的数组都一样,
//它们都是Object数组,可以存任意类型的数据.
//2.倒转方法
var arr = [5,12,8,1,6,4,7];
arr.reverse();
console.log(arr);
//3.排序方法
//由于js中的数组都是Object数组,所以:它默认按照字符串由小到大进行排序.
arr.sort();
console.log(arr);
arr.sort(function(a,b){
return a-b;
});
console.log(arr);
//4.Math--和Java相似,看看手册
//5.Date
//1)如何创建日期对象
var d1 = new Date();
console.log(d1);
var d2 = new Date("2017/10/01 10:00:00");
console.log(d2);
//2)如何格式化日期
console.log(d1.toLocaleDateString());
console.log(d1.toLocaleTimeString());
//3)读写时间分量
var y = d1.getFullYear();
var m = d1.getMonth()+1;
var d = d1.getDate();
var h = d1.getHours();
var mm = d1.getMinutes();
var s = d1.getSeconds();
var now = y+"年"+m+"月"+d+"日 "+h+"时"+mm+"分"+s+"秒";
console.log(now);
//6.RegExp
//1)如何创建正则对象
var str = "you can you up,no can no bb.";
var reg = /no/;
//2)正则对象的方法:test
//检测字符串内是否包含和正则相匹配的子串
console.log(reg.test(str));
//3)正则对象的方法:exec
//普通模式:
//从字符串内找出与正则相匹配的第1个子串
console.log(reg.exec(str));
//全局模式:
//第1次调用,则从字符串内找出与正则相匹配的第1个子串
//第n次调用,则从字符串内找出与正则相匹配的第n个子串
reg = /no/g;
console.log(reg.exec(str));
console.log(reg.exec(str));
console.log(reg.exec(str));
console.log(reg.exec(str));
//4)字符串中支持正则的方法
//replace,match,search
//看看手册
//7.Function对象
//声明函数,即定义函数对象
function sum() {
var s = 0;
if(arguments.length) {
for(var i=0;i<arguments.length;i++) {
s += arguments[i];
}
}
return s;
}
//onload是页面加载事件,在页面加载完成时,由浏览器自动触发.
window.onload = function(){
//alert(1);
//1.读取节点的名称及类型
var p1 = document.getElementById("p1");
console.log(p1.nodeName);
console.log(p1.nodeType);
console.log(document.nodeName);
console.log(document.nodeType);
//2.读写节点的内容
//双标签中间的文本是内容,如<a>内容</a>
//innerHTML(带标签)
var p2 = document.getElementById("p2");
console.log(p2.innerHTML);
p2.innerHTML = "2.DOM操作包含<u>查询</u>节点";
//innerText(忽略标签)
var p3 = document.getElementById("p3");
console.log(p3.innerText);
p3.innerText = "3.DOM操作包含<u>增删</u>节点";
//3.读写节点的值
//表单控件(label除外)内的文字就是值
var input = document.getElementById("btn");
console.log(input.value);
input.value = "BBBBB";
//4.读写节点的属性
//1)通过get/set方法(可以读写任何属性)
var img = document.getElementById("i1");
console.log(img.getAttribute("src"));
img.setAttribute("src","../images/02.jpg");
img.removeAttribute("src");
//2)通过属性名(少数的几个属性可以用该方式)
//id, className, style
var a = document.getElementById("a1");
console.log(a.style.color);
a.style.color = "blue";}
我是初学者,如有更新不好的,欢迎这位大神指出,谢谢大家!
更多精彩以后更新,转载注明!
java-前端之js的更多相关文章
- paip.java 以及JavaScript (js) 的关系以及区别
paip.java 以及JavaScript (js) 的关系以及区别 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http:// ...
- java结合node.js非对称加密,实现密文登录传参——让前后端分离的项目更安全
前言 在参考互联网大厂的登录.订单.提现这类对安全性操作要求较高的场景操作时发现,传输的都是密文.而为了目前项目安全,我自己负责的项目也需要这方面的技术.由于,我当前的项目是使用了前后端分离技术, ...
- 前端分享----JS异步编程+ES6箭头函数
前端分享----JS异步编程+ES6箭头函数 ##概述Javascript语言的执行环境是"单线程"(single thread).所谓"单线程",就是指一次只 ...
- Atitit 深入理解命名空间namespace java c# php js
Atitit 深入理解命名空间namespace java c# php js 1.1. Namespace还是package1 1.2. import同时解决了令人头疼的include1 1.3 ...
- Atitit usbQb212 oo 面向对象封装的标准化与规范解决方案java c# php js
Atitit usbQb212 oo 面向对象封装的标准化与规范解决方案java c# php js 1.1. 封装性是面象对象编程中的三大特性之一 三个基本的特性:封装.继承与多态1 1.2. 魔 ...
- Atitit 电子商务订单号码算法(java c# php js 微信
Atitit 电子商务订单号码算法(java c# php js 微信 1.1. Js版本的居然钱三爷里面没有..只好自己实现了. 1.2. 订单号标准化...长度16位 1.3. 订单号的结构 前 ...
- paip.提高效率---集合的存取括号方式 uapi java python php js 的实现比较
paip.提高效率---集合的存取括号方式 uapi java python php js 的实现比较 ##java ----------- 在JDK1.7中,摒弃了Java集合接口的实现类,如:Ar ...
- 在Java中执行js代码
在某些特定场景下,我们需要用Java来执行Js代码(如模拟登录时,密码被JS加密了的情况),操作如下: ScriptEngineManager mgr = new ScriptEngineManage ...
- java中执行js代码
要在java中执行js代码,首先明白,java不支持浏览器本身的方法.支持自定义的js方法,否则会报错 先新建一个js文件:jsss.js 内容如下: function aa(a,b){ return ...
- 分享非常好用的前端分页js工具类 灵活 简单易懂
分享自己封装的前端分页js工具类 下面是默认样式效果截图 可以随意更改js及css 很灵活 /** * pageSize, 每页显示数 * pageIndex, 当前页数 * pageCount 总 ...
随机推荐
- 分布式机器学习:逻辑回归的并行化实现(PySpark)
1. 梯度计算式导出 我们在博客<统计学习:逻辑回归与交叉熵损失(Pytorch实现)>中提到,设\(w\)为权值(最后一维为偏置),样本总数为\(N\),\(\{(x_i, y_i)\} ...
- AWD平台搭建及遇到的问题分析
1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...
- c++ 辗转相除(动图)
#include<iostream> #include<cstdio> #include<iomanip> #include<cstring> usin ...
- 155_模型_Power BI & Power Pivot 进销存之安全库存
155_模型_Power BI & Power Pivot 进销存之安全库存 一.背景 谈进销存的概念时,我们也需要提及另外一个概念:安全库存. 库存周转在理想的状态下是做到零库存,但是在内部 ...
- SpringBoot之:SpringBoot的HATEOAS基础
目录 简介 链接Links URI templates Link relations Representation models 总结 简介 SpringBoot提供了HATEOAS的便捷使用方式,前 ...
- re学习笔记
re学习笔记 学习链接: https://regexlearn.com/zh-cn/learn \w: 数字字母下划线 \W: 非\w \d \D: !\d \s: space cha \S: !\s ...
- html关键字大全
html标签属性大全 html标签属性大全从网上搜集整理的常用html标签,供朋友们交流学习html用. html标签<marquee> <marquee>...</ma ...
- QT5 QSS QML界面美化视频课程系列 QT原理 项目实战 C++1X STL
QT5 QSS QML界面美化视频课程系列 QT原理 项目实战 C++1X STL 课程1 C语言程序设计高级实用速成课程 基础+进阶+自学 课程2 C语言程序设计Windows GDI图形绘 ...
- BUUCTF-被偷走的文件
被偷走的文件 这题刚开始还以为是单纯的流量题,看流量半天也没发现什么异常. 因为是文件传输过程的,所以我们看到ftp的流量就过滤下看看即可. 在第三个包发现flag.rar存在. 一开始我觉得没啥,后 ...
- 自己封装的tools.js文件
/* * 生成指定范围的随机整数 * @param lower 下限 * @param upper 上限 * @return 返回指定范围的随机整数,上/下限值均可取 */ function rand ...