JavaScript笔记(1)
1.JavaScript的基本概念
- JavaScript是一个解释型的脚本语言
- JavaScript可以写在HTML文档内部的任何地方
- 行内式
- 内嵌式
- 链入式:
<script src="">链入式其标签内部的代码不会被执行</script>
2.JavaScript的基本语法
变量
使用var来声明变量,js里不存在int、float、bool、 double,声明任何类型的变量都用var
变量的命名:
1. 可以使用$、下划线、字母开头
2. 首字符之后可以使用数字、$、下划线、字母
js数据类型:分为两大类,基本数据类型&引用数据类型
基本数据类型:number,string,boolean
引用数据类型:object
undefined,null:
- null表示空值,没存值
- undefined表示未知的,表示一个未知状态的对象
- 1.当一个变量只做了声明,而没有赋值之时,这个变量的状态是undefined而不是null
- 2.当一个函数没有返回值,那么它将返回undefined
js里引用类型允许动态添加字段
例如:
var obj = new Object();
obj.name = "淘宝";
obj.age = "16";
obj.address = "浙江杭州";
alert("大家好,我叫"+obj.name+",我今年"+obj.age+",我来自"+obj.address);
js动态数据类型:
例如:
var bt;
bt = 125;
console.log(typeof(bt));
bt = "BT";
console.log(typeof(bt));
bt = true;
console.log(typeof(bt));
变量的作用域
- 一个页面里不同中声明的变量是不可以互相访问的
- js中没有变量命名冲突,但后声明的变量会覆盖前面同名的变量
- js中没有块级作用域的概念
- 变量不声明也可以直接拿来赋值(在函数中如果不声明就是一个全局变量,如果声明过就是局部变量)
流程控制语句
- if……else
- for
- while
- do……while
- switch:
1. js的switch语句中的case之后可以没有break(如果没有break程序会一直执行下去)
2. switch这里判断的是全等(===)
js中判等:""(相等) 和 "="(全等)
==:只比较内容,不比较数据类型(常用)
var num1 = 123;
var num2 ="123";
if(num1 == num2){
console.log("相等");
}
else{
console.log("不相等");
}
结果为:相等
===:严格比对内容和数据类型
var num1 = 123;
var num2 ="123";
if(num1 === num2){
console.log("相等");
}
else{
console.log("不相等");
}
结果为:不相等
弹出对话框
- alert(""); 警告消息框
- prompt("");确认消息框:会弹出一个文本输入框,输入的数据类型为string
- confirm("");提示消息框
运算符" + "和" - "
" + "的作用:
1.算数相加,前提是2个操作数都是number类型的
2.字符串连接,如果有一个数不是number类型的,那么" + " 就会进行字符串连接
var num = 100;
var str = "20";
console.log(num + str);
输出:10020
" -":算术相减
var num = 100;
var str = "20";
console.log(num - str);
输出:80
var num = 100;
var str = "true";
console.log(num - str);
输出:NaN:Not a Number 不是一个数
数据类型转换
parseInt(arg):将字符串转换为整数
- 自动舍弃小数部分,只保留整数部分,不四舍五入
- 它是个方法
- 如果无法转换,返回NaN
parseFloat(arg):将字符串转换小数
- 保留小数部分
- 如果无法转换,返回NaN
Number(arg):Number是个对象
- 将数据转换成为Number类型的数据
- 如果无法转换,返回NaN
如何判断用户输入的是不是一个数字:isNaN(arg)
var str = "asd";
if(isNaN(str)){
console.log("不是一个数");
}
else{
console.log("是一个数");
}
输出结果为:不是一个数
JavaScript笔记(1)的更多相关文章
- [Effective JavaScript 笔记] 第4条:原始类型优于封闭对象
js有5种原始值类型:布尔值.数字.字符串.null和undefined. 用typeof检测一下: typeof true; //"boolean" typeof 2; //&q ...
- [Effective JavaScript 笔记] 第5条:避免对混合类型使用==运算符
“1.0e0”=={valueOf:function(){return true;}} 是值是多少? 这两个完全不同的值使用==运算符是相等的.为什么呢?请看<[Effective JavaSc ...
- [Effective JavaScript 笔记]第3章:使用函数--个人总结
前言 这一章把平时会用到,但不会深究的知识点,分开细化地讲解了.里面很多内容在高3等基础内容里,也有很多讲到.但由于本身书籍的篇幅较大,很容易忽视对应的小知识点.这章里的许多小提示都很有帮助,特别是在 ...
- [Effective JavaScript 笔记]第27条:使用闭包而不是字符串来封装代码
函数是一种将代码作为数据结构存储的便利方式,代码之后可以被执行.这使得富有表现力的高阶函数抽象如map和forEach成为可能.它也是js异步I/O方法的核心.与此同时,也可以将代码表示为字符串的形式 ...
- [Effective JavaScript 笔记]第28条:不要信赖函数对象的toString方法
js函数有一个非凡的特性,即将其源代码重现为字符串的能力. (function(x){ return x+1 }).toString();//"function (x){ return x+ ...
- 从头开始学JavaScript 笔记(一)——基础中的基础
原文:从头开始学JavaScript 笔记(一)--基础中的基础 概要:javascript的组成. 各个组成部分的作用 . 一.javascript的组成 javascript ECMASc ...
- 【原】javascript笔记之Array方法forEach&map&filter&some&every&reduce&reduceRight
做前端有多年了,看过不少技术文章,学了新的技术,但更新迭代快的大前端,庞大的知识库,很多学过就忘记了,特别在项目紧急的条件下,哪怕心中隐隐约约有学过一个方法,但会下意识的使用旧的方法去解决,多年前ES ...
- JavaScript笔记目录
JavaScript笔记目录 一.JavaScript简介 二.在HTML中使用JavaScript ...持续更新中,敬请期待
- 蛋糕仙人的javascript笔记
蛋糕仙人的javascript笔记:https://www.w3cschool.cn/kesyi/kesyi-nqej24rv.html
- JavaScript笔记(第一章,第二章)
JavaScript笔记(第一章,第二章) 第一章: <meta http-equiv="Content-Type" content="text/html; cha ...
随机推荐
- springboot-mvc:入参日期类型转换String->Date
4种方式: 1.通过在application.ym中配置 spring.mvc.data-format: yyyy-MM-dd HH:mm:ss ,使用的是ParserConverter 优点:简单的 ...
- 微PE:装机不求人,教你制作最纯净的PE安装系统
https://www.jianshu.com/p/50fd699ea916 超好用的PE工具,免费.纯净.无广告,装系统必备! https://www.jianshu.com/p/fecf090b2 ...
- [go]结构体/接口
接口惯用操作: 结构体构造方法返回接口类型 //定义服务器接口 type IServer interface{ Start() Stop() Serve() } type Server struct ...
- Git 解决冲突(3步)
今天新人从master分支合并到自己开发分支时有冲突了,不知道怎么解决,给他解决后,顺便简单记下,免得其他人问时还要再讲一遍 1.先切到自己的分支,拉下代码 git pull 2.向某个分支发起合并 ...
- error: atomic: 没有那个文件或目录
Linux下编译的时候遇到一个问题,就是提示 error: atomic: 没有那个文件或目录 执行的命令是gcc -o myCXXLog myCXXLog.c 经过网上搜索,解决方法有二 (1 ...
- PCL中有哪些可用的PointT类型(4)
博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=269 PointWithViewpoint - float x, y, z, ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_4-3.登录检验JWT实战之封装通用方法
笔记 3.登录检验JWT实战之封装通用方法 讲解:引入相关依赖并开发JWT工具类 1.加入相关依赖 <!-- JWT相关 --> <dependenc ...
- Qt编写自定义控件17-按钮进度条
前言 按钮进度条,顾名思义,表面上长得像一个按钮,单击以后切换成进度条指示按钮单击动作执行的进度,主要用在一些需要直接在按钮执行动作显示对应进度的场景,在很多网页中经常看到这种效果,这个效果有个优点就 ...
- Requests API
Requests API http://docs.python-requests.org/en/latest/ requests的具体安装过程请看: http://docs.python-reques ...
- [ML] Machine Learning in the Common Infrastructure ecosystem
一.CogNet架构 下图,可见Kafka的作用. Partial code: Machine Learning in the Common Infrastructure ecosystem Rele ...