我想要一个可以从 A 到 B、B 到 C、Z 到 A 的函数。
我的功能目前是这样的:
function nextChar(c) {
return String.fromCharCode(c.charCodeAt(0) + 1);
}
nextChar('a');
Run Code Online (Sandbox Code Playgroud)
它适用于 A 到 X,但是当我使用 Z 时......它转到 [ 而不是 A。
将数组的最小值和最大值分成两个变量的最佳方法是什么?我目前的方法感觉很冗长:
var mynums = [0,0,0,2,3,4,23,435,343,23,2,34,34,3,34,3,2,1,0,0,0]
var minNum = null;
var maxNum = null;
for(var i = 0; i < mynums.length; i++) {
if(!minNum) {
minNum = minNum[i];
maxNum = maxNum[i];
} else if (mynums[i] < minNum) {
minNum = mynums[i];
} else if (mynums[i] > minNum && mynums[i] > maxNum) {
maxNum = mynums[i]
}
}
Run Code Online (Sandbox Code Playgroud)
其他似乎"解决"这个问题的帖子看起来很旧,我觉得2017年一定有更好的方法.
我一直按照这些说明安装最新的java jdk:
www.lonecpluspluscoder.com/2017/04/27/installing-java-8-jdk-os-x-using-homebrew/
brew cask install java
Run Code Online (Sandbox Code Playgroud)
这很好用,但是当新版本问世时,如何确保我可以升级到该版本并确保旧版本的jdk不会在我的系统上?
我有一个服务"MyHttpService",其中包含一个这样的observable:
grabData() {
return this.http.get('myaddress')
.map((res:Response) => {return res.json()})
.catch((error:any) => Observable.throw(error.json().error || 'Server error'));
}
Run Code Online (Sandbox Code Playgroud)
我有2个组件.注入"MyHttpService"的OneComponent和TwoComponent依赖于MyHttpService返回的数据.
OneComponent首先加载.单击按钮后,TwoComponent会加载.
在我拥有的每个组件的onNgInit()中:
this.myHttpService.grabData()
.subscribe(
data => {
// do something to the data
});
Run Code Online (Sandbox Code Playgroud)
假设即使我在两个组件中都有这个订阅,这是不正确的,也就是说,不会有多个HTTP请求被调用,并且当TwoComponent加载时对"grabData()"的调用与OneComponent已经提取的数据相同?还是会打个电话?我想避免多个HTTP请求到同一个端点.如果每次调用具有此功能的组件时都进行多次调用,那么处理此问题的最佳方法是什么,以便每次初始化TwoComponent时都没有多次调用该服务?
我有以下学生名单:
students = [{name:'Jordan', passed:true}, {name:'Kyle'},{name:'Jess'},
{name:'Sam', passed:true}
]
Run Code Online (Sandbox Code Playgroud)
我希望能够在HTML模板中获得学生通过的数组的长度.
通常我会这样做:
<div>
{{students.length}}
</div>
Run Code Online (Sandbox Code Playgroud)
但是,我想要这样的伪代码...
<div>
{{total length of students who passed}}
</div>
Run Code Online (Sandbox Code Playgroud)
我想这样做,如果我在页面上有其他按钮修改学生,这样当我改变学生是否通过时,模板将自动反映正确的学生数量.
我怎样才能做到这一点?
我希望能够将 CSV 转换为 JSON。csv 以这样的自由文本形式出现(带有换行符):
name,age,booktitle
John,2,Hello World
Mary,3,""Alas, What Can I do?""
Joseph,5,"Waiting, waiting, waiting"
Run Code Online (Sandbox Code Playgroud)
正如你所知道的,我的问题是文件...
我希望输出的每个字段都没有任何前导和尾随引号...如何正确创建从准确表示此 CSV 的 csv 字符串解析出的 JSON 对象?(没有前导和尾随引号)。
我通常使用:
var mycsvstring;
var finalconvertedjson = {};
var headerfields = // get headers here
var lines = mycsvstring.split('\n');
for(var i = 0; i < lines.length; i++) {
// loop through each line and set a key for each header field that corresponds to the appropriate lines[i]
}
Run Code Online (Sandbox Code Playgroud) 我有6周的div ID" #first,#second...... #sixth.
如果我想在每个div上执行函数,我会设置一个包含每个div名称的数组.如果我想应用一个函数,我设置一个for循环,迭代遍历数组中的每个元素,并(例如)将背景颜色更改为红色:
function updateAllDivsInTheList() {
for(var i = 0; i < array.size; i++)
$("#"+array[i]).changeCssFunction();
}
}
Run Code Online (Sandbox Code Playgroud)
每当我创建一个新div时,我都会将它添加到数组中.
问题是,如果我有大量需要更新的div(比如1200个div中的1000个),那么必须按顺序遍历数组中的每个元素才能成为一个痛苦/表现.是否有更新多个div的替代,更有效的方式或数据结构?可能除了数组之外还有其他更高效的数据结构?或者我正在以最有效的方式做什么?
我想创建一个json对象,如:
{
name: "Julia"
birthdate: "xxxx"
movies: [{title: "movie1", rating: 5}, {title: "movie2", rating 3}}]
}
Run Code Online (Sandbox Code Playgroud)
我想做的事情如下:
var myobj = [];
myobj.push({name: "Julia", birthdate: "xxxx"});
myobj.movies = [];
myobj.movies.push({title: "movie1", rating: 5});
myobj.movies.push({title: "movie2", rating: 3});
Run Code Online (Sandbox Code Playgroud)
但我无法创造"电影"部分.我该如何做到这一点?
如果我有3个链接:
<a href="#link1">Somelink</a>
<a href="#link2">Somelink 2</a>
<a href="#link3">Somelink 3</a>
Run Code Online (Sandbox Code Playgroud)
我希望能够做到这一点,当点击Somelink 2时,它会使链接变粗.如果用户单击"Somelink",则该链接变为粗体,而其他链接不变为粗体.(如果单击Somelink 3,则相同).这该怎么做?
如何捕获 python 中遇到的 unicodedecode 错误并打印出有问题的字符串是什么?
即“...无法解码位置 8 中的字节 XXXX:无效的起始字节”