js初识1
JavaScript
1.定义:可以嵌入HTML文档,载体是浏览器,解释型脚本语言
基于对象和事件驱动
2.注释方式
1.//
2./**/
3./**
*/文档注释,API就是这么生成的。
3.引入方式
外部引入:新建文件夹和文本文档//常用
<script type="text/javascript" src="script/1.js">
alert("打开一个弹框");
</script>
内部引入:
<script>
//书写js脚本地方
console.log("内部的js脚本");//输出到控制台,可用来调试
</script>
4.数据类型
1.弱类型语言
声明变量时变量是没有类型的,给它什么赋值,它就是什么类型的。
java是强类型的,当声明时就定义好类型了,赋值只能赋值特定类型
2.声明变量 var 变量名
a.变量名由数字 字母 _ $组成,不能以数字和某些关键字开头
b.变量名严格区分大小写
c.最好能见名知义:驼峰AnriodArm 下划线分隔单词
3.分类: 特殊数据类型:undefined
基本类型:字符串 数字 布尔boolean(T F)
复合数据类型:Object//对象类型
函数数据类型:function
栗子:1.var a;//默认类型为undefined
console.log(typeof(a));//用控制台检查类型为undefined;
//内置函数typeof(变量名)可获得变量的数据类型
2.a=null;//空对象
a={name:"李四",age:18};
console.log(a.name);
3.//两种定义函数的方式
a=function(){
alert(124);
};
function c(){
};
5.运算符
1.算术运算符:
1.b=a+"1";//打印出来的是字符串拼接:201
b=1+2+"201";//3201
//只有加法可以字符串拼接,减法等不可以;
2.a=1;b=2;
console.log(a/b);//浮点除,有些值是0,默认为整除
//个别情况下,0.1会变成0.0999999因为二进制0.1就是循环的
//练习:12345 每一位数字取出来1 2 3 4 5
a=;
var wan=parseInt(a/);
var qian=parseInt(a/)%;
var bai=parseInt(a/)%;
var shi=parseInt(a/)%;
var ge=a%;
7 console.log(wan,qian,bai,shi,ge);//内置取整
2.赋值运算符
1.++
a=1;//
console.log(a++);//1,先使用a的值,然后再++
console.log(++a);//2,先++,然后使用运算后的结果
console.log(a);//2
//练习:b=++a + a++ +a-- + --a;//8,2(a=2)+2(a=3)+3(a=2)+1(a=1);
2.+= -= *= /= %=增量赋值
var a=10;//赋值运算符
a+=10;//a=a+10;前者为1步,后者为2步,增量运算效率更高。
console.log(a);//20
//-160 -180 200 10
a+=a -=a *=a /=2;//从右往左,a本身不变
3.比较运算符(返回结果为boolean)
1.==不区分类型,只比较值
b=a==10;//true将判断结果 赋值给b
2.===区分类型
b=a==="10";//false
3.!=(!==)同上
4.a=10;b="2";
console(a>b);//true:类型转换:自动将字符串2转成了数字类型(当仅当字符串为全数字)字符是单个字符单个字符的比较
//谷歌浏览器断点调试,Sources
1:运行,一直执行到下一个断点
2:一行一行调试
3:进到函数
4:跳出函数
4.逻辑运算符(与或非&& || !布尔)
&&和||的短路功能:
a=false;
b=2;
var r=a&&b++==3;
console.log(b);//计算到a为假,后面的就不运算了了,输出的b还是2
5.条件运算符
形式:boolean运算结果?结果1:结果2
栗子:var age=19;
var str= age>=18?"你已经成年"":"小屁孩";
console.log(str);
//练习 计算年终奖:var salary=5000;
salary=salary>5000?salary+salary*0.3:salary+salary*50%;
6.结构控制语句
1.分支语句
1.if语句
栗子var age=19;
if(age<18){
console.log("小屁孩回家去");
}//语句块,代码块
else{
console.log("来吧 来吧 相约98");
}
2.else if(){}嵌套
栗子var salary=9000;
if(salary<=5000){
salary+=salary*0.5;
}
else if(salary<=8000){
salary+=salary*0.3
}
else if(salary<=10000){
salary=salary*0.15;
}
console.log("年终奖为:"+salary)
2.switch case
===//case比较时是带类型的比较;
栗子var day=1;
var week;
switch(day变量名){
case 0://如果day==0,就执行以下
week="星期天";
break;//退出整个switch块;
case 1: //case 后具体值不能重复
week="星期一";
break;
default:
week="ERROR";//相当于else
}
console.log(week);
栗子2//月份天数判断,可并列
var month=4;
var year=2008;
switch(month){
case 1:case 8:case 10:case 12:days=31;break;
case 2:case 6:case 9:case 11:days=30;break;
}
console.log(month);
2.循环语句
1.while循环
2.两个关键字
break;//退出当前层循环
continue;//退出本次循环,继续下一次循环
栗子:
i=0;
while(i<=99){
i++;
if(i%2==1){
continue;
}
console.log(i);
}//打印偶数
3.for循环
for(起始条件;判断条件;变化条件){
循环内容
}
js初识1的更多相关文章
- node.js系列笔记之node.js初识《一》
node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...
- Node.JS初识
对Node.JS的认识 1.Node 是一个服务器端 JavaScript 解释器: 2.Node 的目标是帮助程序员构建高度可伸缩的应用程序,编写能够处理数万条同时连接到一个物理机的连接代码.处理高 ...
- .NET程序员也学Node.js——初识Node.js
清明在石门休了八天假,一眨眼,4月又到中旬了...看到.NET在天朝彻底沦陷而又无能为力,我开始尝试去学习一些新的东西来充实自己,我自然是打死不会去学java的,没有为什么,于是乎,最近开始学习一些前 ...
- 54、js初识
今天这篇将介绍javascript,学完javascript就可以使你的网页动起来. 一.JavaScript概述 1.JavaScript的历史 1992年Nombas开发出C-minus-min ...
- vue.js初识(一)
一 什么是vue? Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不 ...
- 6、js初识
今天这篇将介绍javascript,学完javascript就可以使你的网页动起来. 本篇导航: JavaScript概述 JavaScript的基础 JS的数据类型 运算符 流程控制 一.JavaS ...
- Node.js 初识2
原文:https://www.cnblogs.com/zzuIvy/p/nodejs_1.html 测试:node.js部署网站 1.创建js2.js var http = require('http ...
- Node.js 初识1
测试:让Node.js运行脚本 1.创建一个脚本 js1.js console.log('测试'); 2.cmd界面 运行脚本
- python 全栈开发,Day54(node.js初识)
一.什么是Node.js 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一个事 ...
随机推荐
- linux --- 9. docker 容器 和 rabbitmq 队列
一. docker 容器 1.docker是什么? .linux下容器技术有很多,docker是做的最杰出的一款 .docker能够支撑阿里双十一,京东618的业务,说明,性能,安全性不得差 .doc ...
- Hibernate的cascade属性 特别是 cascadeType.all的 作用
1.JPA中的CascadeType.ALL并不等于{CascadeType.PESIST,CascadeType.REMOVE,CascadeType.MERGE,CascadeType.REFRE ...
- react-native android 运行命令
debug模式运行 sudo react-native run-android release模式运行 sudo react-native run-android --variant=release ...
- 理解SSL、HTTPS原理中的对称加密与非对称加密
1.对称性加密 双方使用的同一个密钥,既可以加密又可以解密,这种加密方法称为对称加密,也称为单密钥加密. 简单来说就是:加密与解密都是同一个秘钥. 优点:通常在消息发送方需要加密大量数据时使用,算 ...
- vscode 常用插件
1. Local History 可以查看本地的修改记录,比较不同 2.TODO插件 可以将有待修改或者完善的地方标记出来,在任务列表中查看, 避免后面忘记, 提高效率. 包含TODO, FIXME. ...
- box-sizing 和 dom width
refer : https://developer.mozilla.org/en-US/docs/Web/API/CSS_Object_Model/Determining_the_dimensions ...
- Appium Desktop-Permission to start activity denied.
可能情况1:activity查找错误 如何查找activity (1)确保手机和电脑已连接 adb devices (2)确保在你手机上,要测试的包启动着 (3)dos运行:adb shell d ...
- CSS清除浮动的方法及优缺点
浮动是CSS布局里面用的比较多的属性.浮动的框向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止. 因为浮动会使当前元素产生向上浮的效果,所以浮动的元素会脱离正常的文档流,它包围的内容在 ...
- h5 中软键盘弹出后,点击退出键盘,页面无法恢复
input 绑定blur事件,设置 window.scroll(0,0);
- 【IDE】我的花里胡哨VS
我的 VS2017 效果图,花里胡哨但十分养眼,利于C/C++ Coding~ 一.主题设置 工具 → 扩展和更新 下载插件 Color Theme Editor for Visual Studio ...