数据类型转换,JS操作HTML
数据类型转换
1.自动转换(在某种运算环境下)
- Number环境
- String环境
- Boolean环境
2.强制类型转换
Number()
字符串:纯数字和空字符转为正常数字,其他NaN
布尔值:ture=1,false=0
var str = "abc"
console.log(typeof(str));
var num = Number(str);
console.log(num);
console.log(typeof(num));
console.log("")
/* 最终输出
string
NaN
number*/
String()
原样输出
var num=108.1;
console.log(typeof(num));
var str=String(num);
console.log(str);
console.log(typeof(str));
console.log("")
/*浏览器最终输出
number
108.1
string*/
Boolean()
转化为false:数字0,空字符串,null和underfined
转化为true:值表示有东西
var v=100;
console.log(typeof(v));
var b=Boolean(v);
console.log(b);
console.log(typeof(b));
console.log("");
// number
// true
// boolean
//
parseInt()
转化为整数
与Number的区别:一数字开头的字符串,不会转化为NaN
var v="abc123";
console.log(typeof(v));
var n=parseInt(v);
console.log(n);
console.log(typeof(n));
console.log("");
/*string
NaN
number
*/
parseFloat()
转换为小数或整数
与Number的区别:一数字开头的字符串,不会转换为NaN
var v="123.14abc";
console.log(typeof(v));
var n=parseFloat(v);
console.log(n);
console.log(typeof(n));
console.log("")
/*string
123.14
number
*/
JS操作 HTML
1.事件
- onclick
2.函数
声明函数
function 函数名(){
代码;
}
调用函数
函数名()
3.获取元素
- document.getElementById(" ")
- js代码写在html元素里面
JS操作html元素的属性以及css数据
元素对象.属性名
元素对象.style.属性名
css属性名用小驼峰命名法.只有写在元素style中的css属性,才可以被获取
innerHTML属性 获取或设置双标签内的内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>简易 加法计算器</title>
<style>
input,button{
box-sizing:border-box;
width:300px;
padding:10px;
font-size:16px;
line-height:16px;
border:1px solid #ccc;
}
button{
background:#f5f5f5;
}
#resBox{
box-sizing:border-box;
width:300px;
height:200px;
padding:20px;
border:1px solid #ccc;
}
</style>
</head>
<body>
<table>
<tr>
<td>加数1</td>
<td><input type="text" id="num1"></td>
</tr>
<tr>
<td>加数2</td>
<td><input type="text" id="num2"></td>
</tr>
<tr>
<td></td>
<td>
<button onclick="add()">加</button>
</td>
</tr>
<tr>
<td></td>
<td>
<div id="resBox"></div>
</td>
</tr>
</table> <script>
function add(){
//获取两个input
var num1Input = document.getElementById("num1");
var num2Input = document.getElementById("num2"); //获取两个input中的输入值 并进行强制转换
var num1Value = Number(num1Input.value);
var num2Value = Number(num2Input.value); //对加数1 进行判断
if (isNaN(num1Value)){
alert("请在第一个加数输入正确的数字");
return; //结束函数
}
//对加数2进行判断
if (isNaN(num1Value)){
alert("请在第二个加数输入正确的数字");
return;//结束函数
}
//执行加法
var res = num1Value + num2Value;
//把结果输出到resBox中
var resBox = document.getElementById("resBox");
resBox.innerHTML = res;
} </script>
</body>
</html>
表达式
- 简单表达式:变量,直接量
- 复杂表达式:运算符与简单表达式的组合
- 函数调用表达式
运算符
1.算术运算符
- 加号运算符 +
- 减号运算符 -
- 乘号运算符 *
- 除号运算符 /
- 取余运算符(取模) %
- 负数运算符 -
- 整数运算 +
- 递增运算符 ++
- 递减运算符 --
2.比较运算符
- 相等运算符 ==
- 不等运算符 !=
- 全等运算符 ===
- 不全等运算符 !==
- 小于运算符 <
- 小于等于运算符 <=
- 大于运算符 >
- 大于等于运算符 >=
- in运算符
3.位运算符
- 按位与 &
- 按位或 |
- 按位非 ~
- 按位异或 ^
- 左移
- 右移
4.赋值运算符
- =
- +=
- -=
- *=
- /=
- %=
5.其他运算符
- 字符串连接符 +
,
运算符- typeof 运算符
- 比较运算符 表达式 ? 表达式1 : 表达式2
数据类型转换,JS操作HTML的更多相关文章
- Util应用程序框架公共操作类(一):数据类型转换公共操作类(介绍篇)
本系列文章将介绍一些对初学者有帮助的辅助类,这些辅助类本身并没有什么稀奇之处,如何能发现需要封装它们可能更加重要,所谓授之以鱼不如授之以渔,掌握封装公共操作类的技巧才是关键,我会详细说明创建这些类的动 ...
- Util应用程序框架公共操作类(三):数据类型转换公共操作类(扩展篇)
上一篇以TDD方式介绍了数据类型转换公共操作类的开发,并提供了单元测试和实现代码,本文将演示通过扩展方法来增强公共操作类,以便调用时更加简化. 下面以字符串转换为List<Guid>为例进 ...
- Util应用程序框架公共操作类(二):数据类型转换公共操作类(源码篇)
上一篇介绍了数据类型转换的一些情况,可以看出,如果不进行封装,有可能导致比较混乱的代码.本文通过TDD方式把数据类型转换公共操作类开发出来,并提供源码下载. 我们在 应用程序框架实战十一:创建VS解决 ...
- (2017.10.16) javascript 数据类型转换与操作
javascript 有 5 种基本数据类型:undefined.null.Boolean.String.Number,还有1 种较复杂的数据类型 Object:各种类型之间可以相互转换,其中有些有趣 ...
- JSON格式数据的js操作
第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + ...
- JS 数据类型转换
JS 数据类型转换 方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把 ...
- JS数据类型转换
JS 数据类型转换 方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把 ...
- {}+[] = ? 和 []+{} = ? 浅谈JS数据类型转换
参加公司技术嘉年华第一季(前端.服务端)的间隙,陈导问了我一个问题:{}+[] 和 []+{}两个表达式的值分别是什么?根据我的理解我觉得结果应该都是"[object Object]&quo ...
- JS的数据类型转换
JS 数据类型转换 方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把 ...
随机推荐
- HDFS伪分布式
(一).HDFS shell操作 以上已经介绍了如何搭建伪分布式的Hadoop,既然环境已经搭建起来了,那要怎么去操作呢?这就是本节将要介绍的内容: HDFS自带有一些shell命令,通过这些命令我们 ...
- 问题 D: 约数的个数
问题 D: 约数的个数 时间限制: 1 Sec 内存限制: 32 MB提交: 272 解决: 90[提交][状态][讨论版][命题人:外部导入] 题目描述 输入n个整数,依次输出每个数的约数的个数 ...
- 如何理解流Stream
百度百科: 计算机中的流其实是一种信息的转换.它是一种有序流,因此相对于某一对象,通常我们把对象接收外界的信息输入(Input)称为输入流,相应地从对象向外输出(Output)信息为输出流,合称为输入 ...
- HDU G-免费馅饼
http://acm.hdu.edu.cn/showproblem.php?pid=1176 Problem Description 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然 ...
- [Elasticsearch] 多字段搜索 (二) - 最佳字段查询及其调优(转)
最佳字段(Best Fields) 假设我们有一个让用户搜索博客文章的网站,就像这两份文档一样: PUT /my_index/my_type/1 { "title": " ...
- 【loj6191】「美团 CodeM 复赛」配对游戏 概率期望dp
题目描述 n次向一个栈中加入0或1中随机1个,如果一次加入0时栈顶元素为1,则将这两个元素弹栈.问最终栈中元素个数的期望是多少. 输入 一行一个正整数 n . 输出 一行一个实数,表示期望剩下的人数, ...
- 算法学习——kruskal重构树
kruskal重构树是一个比较冷门的数据结构. 其实可以看做一种最小生成树的表现形式. 在普通的kruskal中,如果一条边连接了在2个不同集合中的点的话,我们将合并这2个点所在集合. 而在krusk ...
- [NOIP2012] 文化之旅 dfs
这道题就体现了聪明的搜索策略的重要性,如果我们正着搜,判断效率会明显下滑,所以我们就采用倒着搜索.(其实很玄学.....) #include <cstdio> #include <b ...
- BZOJ1009: [HNOI2008]GT考试 矩阵快速幂+kmp+dp
这个题你发现打暴力的话可以记忆化搜素加剪枝,那么意味着可以递推,我们搜的话就是1010^9我们就往下匹配遇到匹配成功就return,那么我们可以想一下什么决定了状态,我们考虑kmp的过程,对于我们目前 ...
- 从零开始学习MXnet(三)之Model和Module
在我们在MXnet中定义好symbol.写好dataiter并且准备好data之后,就可以开开心的去训练了.一般训练一个网络有两种常用的策略,基于model的和基于module的.今天,我想谈一谈他们 ...