我在Nicholas Zakas的第3版第78页(我认为的最后一篇)中读到了"专业的Web开发人员JavaScript":
switch语句使用相同的运算符比较值,因此不会发生类型强制(例如字符串"10"不等于数字10).
我编写了一些简单的switch语句来确认,结果不同:
var num = "9";
switch (true) {
case num < 0:
alert("less than 0");
break;
case num >= 0 && num <10:
alert("between 0 and 10");
break;
default:
alert("False");
}
Run Code Online (Sandbox Code Playgroud)
https://jsfiddle.net/pbxyvjyf/
因此,类型强制完成:alert("between 0 and 10")选择.有规则改变或我做错了什么?
我还在学习javaScript的基础知识,我不明白为什么会这样.
类型强制false == "false"将转换为:
false == false //true
Run Code Online (Sandbox Code Playgroud)
要么
"false" == "false" //true
Run Code Online (Sandbox Code Playgroud)
那么,为什么false == "false"是假的?
我正在学习如何在 CSS 中制作模态图像,并遇到了这个示例,其中有两个声明块包含仅指定持续时间的转换(?):
#myImg {
border-radius: 5px;
cursor: pointer;
transition: 0.3s;
}
Run Code Online (Sandbox Code Playgroud)
和
.close {
position: absolute;
top: 15px;
right: 35px;
color: #f1f1f1;
font-size: 40px;
font-weight: bold;
transition: 0.3s;
}
Run Code Online (Sandbox Code Playgroud)
它写在“如何...模态图像”一章中。(w3学校)。它是否正确?如果是,它是 的替代品吗transition: all 0.3s;?
我是初学者,仍然无法理解布局的类型,CSS的整个布局架构.这似乎微不足道,但很难在互联网上搜索.我见过的所有网站都将CSS布局划分为固定(或静态),流体(或流动)和响应.例如,网格和弹性框是一种没有分类的外星人.
我认为这是:
响应或响应 - 固定和流体布局
响应性质 - 网格固定布局,网格流体,弹性框
我对吗?有人能解释一下我们这个时代的有效分类吗?
1)我刚刚使用Real Favicon生成器完成了我的第一个favicon文件 .在该网站的常见问题解答中,它表示将favicon保留在网站的根目录中是最佳做法.我做到了,但现在ROOT文件夹有太多文件--26个新文件!
如果我将favicon文件移动到子文件夹,我将失去什么?Ex: /favicon/favicon.ico
2)我注意到不同的网站在favicon代码方面使用不同的方法.
例如,Bootstrap只有这些代码行:
<link rel=apple-touch-icon href=/apple-touch-icon.png>
<link rel=icon href=/favicon.ico>
Run Code Online (Sandbox Code Playgroud)
其他人有很多像Wordpress.com这样的爱好者:
<link rel="shortcut icon" type="image/vnd.microsoft.icon" href="//s1.wp.com/i/favicon.ico" sizes="16x16 32x32">
<link rel="shortcut icon" type="image/x-icon" href="//s1.wp.com/i/favicon.ico" sizes="16x16 32x32">
<link rel="icon" type="image/x-icon" href="//s1.wp.com/i/favicon.ico" sizes="16x16 32x32">
<link rel="icon" type="image/png" href="//s1.wp.com/i/favicons/favicon-64x64.png" sizes="64x64">
<link rel="icon" type="image/png" href="//s1.wp.com/i/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="//s1.wp.com/i/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="apple-touch-icon" sizes="57x57" href="//s1.wp.com/i/favicons/apple-touch-icon-57x57.png"><link rel="apple-touch-icon" sizes="60x60" href="//s1.wp.com/i/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="//s1.wp.com/i/favicons/apple-touch-icon-72x72.png"><link rel="apple-touch-icon" sizes="76x76" href="//s1.wp.com/i/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="//s1.wp.com/i/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="//s1.wp.com/i/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="//s1.wp.com/i/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" …Run Code Online (Sandbox Code Playgroud) 我很久没有回到javaScript了,我刚刚学习了ES6的新功能.这是第一个怀疑.
虽然我知道let变量不能在同一块范围内声明两次,但我遇到了这种情况:
function tell(story){
let story = {
story
};
}
Run Code Online (Sandbox Code Playgroud)
它给了我一个错误:
Uncaught SyntaxError: Identifier 'story' has already been declared
使用var它工作得很好.
1)这是否意味着我必须使用let(或甚至)声明一个具有不同名称的函数参数的变量const?就变量命名而言,这可能非常烦人.
为了保持我的名字:
function tell(story){
story = {
story
};
}
Run Code Online (Sandbox Code Playgroud)
2)在这种情况下,变量story将完全属于函数的范围tell?
也许我想要一些不可能的事情。我想要一个只有一个使用 Flexbox 设计的列的网站。目的是无论该列内容的大小如何,只有一列将其高度拉伸到页脚。类似于下面的结构:
我尝试用这段代码来实现这一点(我正在使用引导程序):
<div class="container-fluid">
<div class="row">
<header class="col-md-12">
stuff...
</header>
<div class="col-md-1 col-a">
stuff...
</div>
<div class="col-md-10 col-b">
Stuff...
</div>
<div class="col-md-1 col-c">
<div class="col-c-child">
Stuff..
</div>
</div>
<footer class="col-md-12">
Stuff
</footer>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
然后在 CSS 中添加特定于col-c和的内容col-c-child:
.col-c {
display: flex;
flex-direction: column;
height: 100%;
}
.col-c-child {
flex: 1;
}
Run Code Online (Sandbox Code Playgroud)
但不工作。任何想法?
解决方案:
header,其他行用于内容,其他行用于footer,也就是说 - 不要将所有内容都放在同一行中。display:flex使用and构建一个包含 col-a、col-b 和 col-c 的 div 包装器flex-direction: row;我在我正在构建的网页中有3个不同的脚本,一切正常.
但是,在我了解了IIFE的优点之后,我试图将我的所有脚本包装在一个IIFE中,但它无法正常工作.控制台上出现错误:'Uncaught SyntaxError:意外的输入结束'refeering script-1.js.
所以,我有类似的东西:
<script type='text/javascript' src='...script-1.js'></script>
<script type='text/javascript' src='..script-2.js'></script>
<script type='text/javascript' src='script-3.js'></script>
Run Code Online (Sandbox Code Playgroud)
我正在做的是:在script-1.js上我启动了这样的代码
(function() {
//....rest of javaScript code script-1
Run Code Online (Sandbox Code Playgroud)
在script-3.js上,我结束了这样的代码:
//....rest of the code script-3
})();
Run Code Online (Sandbox Code Playgroud)
1)现在,第一个问题是:这可能吗?在同一个IIFE中包装不同的js文件?理论上似乎是,但我不确定.
2)然后,如果有可能,我做错了什么?
我知道对你们大多数人来说这似乎很基本但我会很感激一些反馈:)