如何检查字符串是否包含数组的任何元素?如果元素有一些字符串,我想过滤一些数组.请看下面的代码.
var arr = ['banana', 'monkey banana', 'apple', 'kiwi', 'orange'];
function checker(value) {
var prohibited = ['banana', 'apple'];
for (var i = 0; i < prohibited.length; i++) {
if (value.indexOf(prohibited[i]) == -1) {
return true;
} else {
return false;
}
}
}
arr = arr.filter(checker);
console.log(arr);Run Code Online (Sandbox Code Playgroud)
结果是[ 'apple', 'kiwi', 'orange' ].本'apple'应该得到去除,但事实并非如此.
上面的代码只过滤了'banana',而不是'apple'.我有很多关键字要过滤.有没有更简单的方法?
function getCookies(){
request('http://google.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(response.headers);
}
})
}
Run Code Online (Sandbox Code Playgroud)
结果
{ date: 'Fri, 11 Dec 2015 07:15:50 GMT',
expires: '-1',
'cache-control': 'private, max-age=0',
'content-type': 'text/html; charset=EUC-KR',
p3p: 'CP="This is not a P3P policy! See https://www.google.com/support/accounts/answer/151657?hl=en for more info."',
server: 'gws',
'x-xss-protection': '1; mode=block',
'x-frame-options': 'SAMEORIGIN',
'set-cookie':
[ 'PREF=ID=1111111111111111:FF=0:TM=1449818150:LM=1449818150:V=1:S=Q3BB20FA6TkaZymd; expires=Thu, 31-Dec-2015 16:02:17 GMT; path=/; domain=.google.co.kr',
'NID=74=hnriWxk7N9jHtP5W0qgaxrwD1YuNKOmJg748ucxWilu9jaqHJVovfkYdvMr0tlp-VToID5cdTNDSXNXqr4M8umJ9traab67x2xZKfu3hJbsBRXeVvyiCOcwZ8bkXNcU4; expires=Sat, 11-Jun-2016 07:15:50 GMT; path=/; domain=.google.co.kr; HttpOnly' ],
'accept-ranges': 'none',
vary: 'Accept-Encoding',
connection: 'close' } …Run Code Online (Sandbox Code Playgroud) 我正在尝试在Formik中使用DatePicker.但是,当我单击DatePicker的日期时,其表单值不会更改.相反,我收到了这个错误:
未捕获的TypeError:e.persist不是Formik._this.handleChange中的函数(formik.es6.js:5960)
我缩短了代码,代码如下
const SomeComponent = () => (
<Formik
render={({
values,
handleSubmit,
handleChange,
setFieldValue
}) => {
return (
<div>
<form onSubmit={handleSubmit}>
<DatePicker
name={'joinedAt'}
value={values['joinedAt']}
onChange={handleChange}
/>
</form>
</div>
)
}}
/>
)
Run Code Online (Sandbox Code Playgroud)
我用Google搜索了一些文档,https://github.com/jaredpalmer/formik/issues/187和https://github.com/jaredpalmer/formik/issues/86
所以我尝试过如下,但它不起作用.
...setFieldValue
<DatePicker
name={'joinedAt'}
value={values['joinedAt']}
onChange={setFieldValue}
/>
Run Code Online (Sandbox Code Playgroud) MDN说:
六种原始数据类型:
符号(ECMAScript 6中的新内容)
和对象
但我困惑,功能数据类型和对象数据类型.
让我们来看看 :
var func = function() {
console.log ('Hello World ! ')
};
var obj = {
property : something
}
console.log(typeof(func)); // ===> function
console.log(typeof(obj)); // ===> object
Run Code Online (Sandbox Code Playgroud)
是不同的功能数据类型和对象数据类型?为什么typeof(func)功能?不是一个对象?该文件称有7种数据类型(6种原始,1种对象).功能不包括在任何地方.
到现在为止,超过1年,我认为函数的数据类型是对象,我听说函数是JavaScript中的第一类对象,所以我对函数是对象没有疑问但是今天我想更多时间,并且想知道.
有什么不同吗?
我正在为我的Web应用程序进行配置,尝试将其呈现为网页.以下是我的代码的一部分.我想选择配置[0] .volume的选项.因此,如果config [0] .volume为'50',则所选选项将为'50'.代码运作良好.但我想知道."我怎样才能缩短这段代码?" 我的代码很冗长.
<select id="volume">
<option value="1" <%= config[0].volume == '1' ? 'selected' : ''%>>1</option>
<option value="5" <%= config[0].volume == '5' ? 'selected' : '' %>>5</option>
<option value="10" <%= config[0].volume == '10' ? 'selected' : '' %>>10</option>
<option value="50" <%= config[0].volume == '50' ? 'selected' : '' %>>50</option>
<option value="75" <%= config[0].volume == '75' ? 'selected' : '' %>>75</option>
<option value="100" <%= config[0].volume == '100' ? 'selected' : '' %>>100</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我想大约2个小时,但没有任何结果.也许我必须使用jquery或javascript,并添加属性来拥有它,
attr('selected')... ?
Run Code Online (Sandbox Code Playgroud)
我不知道,你能帮帮我吗?
如何禁用显示下划线到素材选择器?
沙箱 https://codesandbox.io/s/l2ykr7kwvz?from-embed
我想删除它的下划线TextField.
我试过了
disableUnderline={true}
underlineStyle={{display: 'non'}}
showingUnderline={false}
但没有任何作用,我怎么能隐藏下划线?
<DatePicker
underlineStyle={{display: 'none'}}
value={selectedDate}
onChange={this.handleDateChange}
animateYearScrolling={false}
/>
Run Code Online (Sandbox Code Playgroud) 我想从我的应用程序打开ios设置应用程序.设置目的地是[settings => notification => myapp].打开和关闭推送通知.
有一些关于如何链接到设置的文档,但我不知道如何打开深层链接.(notification => myapp).
我怎样才能做到这一点?
让我们假设上面的firebase数据库模式.
我想要的是在"15039996197"时间戳之后检索消息.每个消息对象都有一个createdAt属性.
如何在特定时间戳之后才能收到消息?在这种情况下,最后两条消息是我想要检索的.
我试过firebaseb.database().ref(`/rooms/$roomKey/messages`).startAt('15039996197')但失败了.它返回0.我该怎么做?
我已经看到了这个问题:如何暂停然后恢复一个线程?
我在stackoverflow中看到了很多与我的问题相关的问题,但是我无法理解它们,因为它们是抽象的,并且不够具体到我的情境.
有2个倒计时标签.单击时Start Button,将执行倒计时.以同样的方式,当您单击时Pause Button,它应该暂停.但是,我收到一个错误:Exception in thread "AWT-EventQueue-0" java.lang.IllegalMonitorStateException
2线程已启动,但我无法使用该wait()方法停止它.请让我知道如何停止线程,并实现resume按钮.谢谢.简单的例子如下
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
class FirstCountDown extends SwingWorker<Integer, Integer> {
public Integer doInBackground() {
for(int i=0; i<1000; i++){
CountDown.count1.setText(String.valueOf(1000-i));
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
}
class SecondCountDown extends SwingWorker<Integer, Integer> {
public Integer doInBackground(){
for(int i=0; i<1000; i++){
CountDown.count2.setText(String.valueOf(1000-i));
try { …Run Code Online (Sandbox Code Playgroud) 如何从Firebase获取设备令牌(FCM注册令牌)?
我正在使用firebase及其服务器使用node.js制作移动应用程序.
我想push notification从服务器发送消息,但我不知道如何获取设备令牌.
如何从外部服务器获取设备令牌?我现在正在使用Firebase管理SDK.
是否仅在应用程序连接到fcm服务器时生成设备令牌?
当用户首次运行应用程序并注册FCM服务器时,我应该将令牌保存到另一个数据库吗?
firebase react-native firebase-cloud-messaging firebase-admin
javascript ×3
react-native ×3
firebase ×2
material-ui ×2
reactjs ×2
arrays ×1
cookies ×1
ejs ×1
formik ×1
java ×1
jquery ×1
node-request ×1
node.js ×1
string ×1
types ×1