前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaScript学习笔记006-作用域0类型转换

JavaScript学习笔记006-作用域0类型转换

作者头像
Mr. 柳上原
发布2018-09-05 15:19:04
6900
发布2018-09-05 15:19:04
举报

Author:Mr.柳上原

  • 付出不亚于任何的努力
  • 愿我们所有的努力,都不会被生活辜负
  • 不忘初心,方得始终

学习的路途

总会有很多迷茫

js的迷茫比html和css多了很多倍

每学一节课

都需要付出以前学习html时十倍百倍的努力去理解去练习

学习途中

听了很多 “前端前辈” 的指导教育

产生过很多不确定和担心忧虑

不忘初心

就算再难

也要完成

代码语言:javascript
复制
<!DOCTYPE html> <!-- 文档类型:标准html文档 -->

<html lang='en'> <!-- html根标签 翻译文字:英文 -->

<head> <!-- 网页头部 -->

<meat charset='UTF-8'/> <!-- 网页字符编码 -->

<meat name='Keywords' content='关键词1,关键词2'/>

<meat name='Description' content='网站说明'/>

<meat name='Author' content='作者'/>

<title>前端59期学员作业</title> <!-- 网页标题 -->

<link rel='stylesheet' type='text/css' href='css/css1.css'/> <!-- 外链样式表 -->

<style type='text/css'> /*内部样式表*/

</style>

</head>

<body> <!-- 网页主干:可视化区域 -->

<script>

// 类型
number
string          ' '  " "
boolean     true  false
null            空值  null
undefined  未初始化的值 / 默认值   undefined
object        对象 [ ] { } function

// 显式强制类型转换
// 隐式强制类型转换

// 转数字
let str = '123'; // typeof = string
let num = Number(str); // 内建函数,js底层提供

// 不是数字类型的字符串,转换为NaN,not a number

// 空字符串会被转化为0

// null会被转化成0

// undefined会被转化为NaN

// true会被转化为1

// false会被转化为0

// { }会被转化为NaN

// [ ]会被转化0

// [ ]里有一条数字数据的时候会被转化该数字,有一个以上时为NaN

// parseInt( ); 取数字的整数部分
parseInt(100px) = 100;

// parseFloat( ); 取小数
parseFloat(2.3333px) = 2.3333;

// 转字符串
let num = 123;
let str = String(num); // 内建函数,js底层提供
let str01 = toString(num); // 没有默认转化方法的时候会报错,null  undefined

// 转布尔
let num = 123;
let bool = Boolean(num); // 内建函数,js底层提供

// 除了以下六个值,其他转布尔都是true
0 null undefined NaN '' false


// 作用域:变量生效的环境

// es5:
全局作用域 script 独立js文件
函数作用域

// es6:
块作用域 { } ,let const

// 无论什么作用域下,只要没有申明就直接使用赋值的变量,会成为类似全局作用域

// 没有申明就直接使用赋值的变量,为成为顶层 / 全局window对象的属性

// var 申明的全局变量会污染顶层对象的环境属性

// var 申明的只认全局和函数作用域

let a = 1; // 全局作用域
function () {
var b =2; // 函数作用域
}
if () {
var c = 1; // 全局作用域
}
if () {
let d = 1; // 块作用域
for (let f = 1; f  < 3; f++) { // 块作用域
let e = 1; // 块作用域
}
for (var f = 1; f  < 3; f++) { // 全局作用域
var e = 1; // 全局作用域
}

// var 和 let 的区别
for (var f = 1; f  < 3; f++) { // 全局作用域
div[f].idx = f;
div[f].onclick = function () {
console.log(this.idx); // this,当前的对象永远等于触发该方法时的对象
}
}
for (let f = 1; f  < 3; f++) { // 全局作用域
div[f].onclick = function () {
console.log(f);
}
}

</script>

</body>

</html>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.07.07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档