对js的有感而发
1、什么是JavaScript?
他是一个脚本语言,也是一种解释性语言,也是一种弱类型语言。
2,当我们学习JavaScript时我们肯定要知道,js的组成是什么? 应该怎么用?这些是最基础的。
js的组成:核心ECMAScript DOM BOM。
js怎么用:(有几种方法)1.在Script对标签中写js代码
2.在外部js中写js,然后在引入进来;
3.在属性里面写js代码,(这种是不太推荐的,因为这样影响自己发现问题,不方便改)
这些方法其实是跟引入css样式差不多的,不同就是,js可以在body和head里面都可以写。
3.现在进入正题js的变量以及规范
我们一般使用var来申明变量了,这变量是在内存中申明的一段可以存储可变化的量,但是我们申明变量不是随便申明的,它是有一定规则的,比如不能用数字开头但可以用字母、下划线 和 $,还有不能关键字还有保留着、驼峰等。
4js的数据类型
4.1.数字类型number小数和整数 可以表示32位的整数 可以表示64位的浮点数
4.2string 需要用 "" 或''包括的就是字符串类型一个字符占两位
4.3boolean; true false
4.4undefined 就是定义一个空值,在""里面不写东西(这是个人理解仅供参考)
4.5null 可以把一个值定义为null
5.js的运算
5.1string + number = string
5.2string + boolean = string
5.3 number + boolean = number
5.4number + undefiend = NaN
5.5 boolean + undefiend = NaN
5.6 string + undefiend = string
6.关系运算
这几个运算符是我们常见的比如:什么< > <= => == === != !==等
这几个最后输出的结果一定都是Boolean类型的
== 判断两个数据是否相等
!= 不等于, 判断两个数据是否不相等
=== 判断数值和类型是否完全相等
!== 判断数值和类型是否完全不相等
比如判断一个东西是否涨价
var input = prompt("请输入价格");
var a = input>6888;
var b = input<6888;
console.log("涨价了" +a);
console.log("没有涨价"+ b);
7.位运算符
只能做数字的运算,且将数字转换成二进制,在做运算
& 按位 与 将两边的操作数转换成为二进制,每位的数字,只要对应都是1的时候,该位的结果才为1,否则该位结果为0
这是我自己做的一个小案例
var num1 = 6;
var num2 = 7;
var r = num1 & num2;
console.log(r) //110:6
可以用它来判断奇偶性,尾数是一为奇数,尾数为0为偶数;(%用取模的方法也可以判断奇偶)
| 按位 或 将两边的操作数转换成为二进制,比较每位上的数字,两个数字中有一个是1,则该位的结果就是1 ,否则 0
var num1 = 6;
var num2 = 7;
var r = num1 | num2;
console.log(r)//111:7
场合:向下取整 位运算一定会将数据转换为二进制,而小数会被转换为整数
<<按位左移 ,将二进制数,向左移动几位 ,右面以0 补位
>>按位右移 ,将二进制数,向左移动几位 ,右面以0 补位
^异或 将两边的数字转换为二进制 进行比较,每位上的数字,只有一个为1时,该位结果才为1,否则0
8.赋值运算
有单目运算 双目运算 三目运算
单目运算和双目运算相对较简单,我在这里主要是解释一下三目运算
这是我写的一个小案例,可以对着这个看
var het = prompt("请输入体重");
var weet = prompt("请输入身高");
var a = het/(weet*weet);
var a = b;
var b = a>=25 ?"偏胖":a>=20 && a<25 ?"正常":"偏瘦";
console.log(b)
这些都是个人的见解,可以给你们提供参考和学习,最主要的是自己理解和操作。
对js的有感而发的更多相关文章
- js ShowDialogModal 关闭子页面并刷新父页面,保留查询条件
不知道大家有没有碰到类似的问题,当时的你是什么思路来处理这个问题呢?是url,session,cookie,还是…… 今天笔者就遇到了这个问题,当时的想法如:url,session,cookie都尝试 ...
- Vue.js 和 MVVM 小细节
MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自 ...
- js学习笔记:操作iframe
iframe可以说是比较老得话题了,而且网上也基本上在说少用iframe,其原因大致为:堵塞页面加载.安全问题.兼容性问题.搜索引擎抓取不到等等,不过相对于这些缺点,iframe的优点更牛,跨域请求. ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- JS调用Android、Ios原生控件
在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...
- jquery和Js的区别和基础操作
jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...
- 利用snowfall.jquery.js实现爱心满屏飞
小颖在上一篇一步一步教你用CSS画爱心中已经分享一种画爱心的方法,这次再分享一种方法用css画爱心,并利用snowfall.jquery.js实现爱心满屏飞的效果. 第一步: 利用伪元素before和 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
- JS正则表达式常用总结
正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...
随机推荐
- Linux系统学习 十七、VSFTP服务—本地用户访问—用户访问控制
FTP相关文件中用户控制列表文件 /etc/vsftpd/ftpusers #该文件永远都是黑名单(针对访问ftp服务,一般不做修改) /etc/vsftpd/user_list ...
- [洛谷P1373][题解]小a和uim之大逃离
(别点我我不是题目) 这道题可以很容易看出是一道dp(因为是在dp关卡里找的) 稍微想一下就可以yy出一个不错的状态: f[i][j][k][0/1]代表走到了点(i,j).膜液量相差k(小a-uim ...
- .net core 在 Docker 上的部署
Docker可以说是现在微服务,DevOps的基础,咱们.Net Core自然也得上Docker..Net Core发布到Docker容器的教程网上也有不少,但是今天还是想来写一写.你搜.Net co ...
- 【Oracle】datafile的resize大小确认方法
在对Oracle的表进行删除操作的时候,虽然数据被清空了,但是物理上占用的空间却没有被释放掉,这有可能使我们的DB服务器的物理存储始终在增长. 我们在删除用户,表的同时也要对datafile文件进行r ...
- Go语言常见坑
可变参数是空接口类型当参数的可变参数是空接口类型时,传人空接口的切片时需要注意参数展开的问题.func main() { var a = []interface{}{1, 2, 3} fmt.Prin ...
- C#_服务器EXCEL模板文件导出
A-1:EXCEL模板导出 非常简单,将EXCEL模板上传到项目中后,将其浏览URL保存下来(excelUrl),然后: window.location.href="http://local ...
- PhantomJS抓取中文文档乱码
使用PhantomJs抓取百度标题乱码 var url="http://www.baidu.com" var page=require('webpage').create() pa ...
- 多线程之NSOpertionQueue操作队列
//NSOpertionQueue NSOperation //Queue //主队列 和 自定义队列 //主队列是运行在主线程当中,自定义队列运行在后台 //NSOperation 定义需要执行的操 ...
- 射频IC卡和IC卡读卡器的成本分析
当今射频IC卡和IC卡读卡器的种类繁多,很多人问IC卡读卡器多少钱,那么如何在满足我们需求的情况下最大的节省成本呢.下面就各种射频IC卡和IC卡读卡器来分析下各自的成本. ...
- jeesite3环境部署时初始化数据库注意问题
---恢复内容开始--- 首先要修改jeesite.properties下数据库连接方式,注意选择自己的数据库 其次在pom.xml文件中修改对应的数据库连接方式 最后运行db文件夹下的init-db ...